2016-01-12 2 views
0

Хорошо, это то, что у меня есть до сих пор; в основном он выбирает самые популярные хеш-теги и выделяет их в DESC, однако, когда он выдает эхо, он печатает, как показано ниже, как это изменить;Популярные Hashtags

Что получает Вторит Out Это то, что на странице

Array ([#conversation] => 1 [#new] => 1) 

Выберите Statement Как я могу получить это просто эхо из хэш-тегов появляется.

<?php 

$result = mysql_query("SELECT subject, count(usr_users.subject)as subjectCount FROM usr_users 
    GROUP BY usr_users.subject 
    ORDER BY subjectCount DESC 
    ")or die(mysql_error()); 
$maxLines = 10; 
while ($row = mysql_fetch_array($result)) { 
    $str1 = $row['subject']; 
    $a = explode(' ', $str1); 
    $size = sizeof($a); 
    for ($i = 0; $i < $size; $i++) { 
     $v = $a[$i]; 
     if ($v[0] == '#') { 
      $hash_arr[] = $v; 
     } 
    } 
    if (0 == $maxLines) 
     break; 
} 
$t = array_count_values($hash_arr); 
ksort($t); 
print_r($t); 
?> 
+0

@ Chris85 как это достигается? извините за новый PHP –

+0

Отвечено на сообщение, демонстрирующее, как использовать 'foreach'. – chris85

ответ

0

print_r не делает то, что вы думаете об этом. Вы хотите выполнить итерацию по массиву, используя foreach. Демонстрация:

$array = array("#conversation", "#new"); 
$t=array_count_values($array); 
foreach($t as $hash => $count) { 
    echo $hash . "\n"; 
} 

Выход:

#conversation
#new

Демо: https://eval.in/501267

0

попробовать этот

<?php 
$result = mysql_query("SELECT subject, count(usr_users.subject)as subjectCount FROM usr_users 
GROUP BY usr_users.subject 
ORDER BY subjectCount DESC 
")or die(mysql_error()); 
$maxLines = 10; 
while($row = mysql_fetch_array($result)) 
{ 
$str1= $row['subject']; 
$a=explode(' ',$str1); 
$size=sizeof($a); 
for($i=0;$i<$size;$i++){ 
$v=$a[$i]; 
if($v[0]=='#'){ 
$hash_arr[]=$v; 
} 
} 
if(0==$maxLines) 
break; 
} 
$t=array_count_values($hash_arr); 
ksort($t); 
//print_r($t); 
while (list($key, $val) = each($t)) { 
       if(!empty($val)){ 
        echo $fields= $key ."count is->"; 
        echo $valset= $val ;// if you want to comment this value then comment it . 
        echo "<br>"; 
       } 
      } 
// or 
//foreach($t as $row=>$value){echo $row."<br>";} 
?> 

или использовать Еогеасп instred из Wile

foreach($t as $row=>$value){ 
echo $row."<br>"; 
} 

если вы хотите заменить # от ценности используемых

foreach($t as $row=>$value){ 

echo str_replace('#','',$row) ; 
echo "</br>"; 

} 

результат:

conversation 
    new 
Смежные вопросы