Php 流行的标签
好吧,这就是我到目前为止所做的;基本上,它选择了最流行的散列标签,echo将它们输出到DESC中,但是当echo将它们输出时,它会像下面这样输出,我该如何更改它 哪些内容得到了回应 这是页面上显示的内容Php 流行的标签,php,mysql,Php,Mysql,好吧,这就是我到目前为止所做的;基本上,它选择了最流行的散列标签,echo将它们输出到DESC中,但是当echo将它们输出时,它会像下面这样输出,我该如何更改它 哪些内容得到了回应 这是页面上显示的内容 Array ( [#conversation] => 1 [#new] => 1 ) Select语句如何让它只回显散列标记 <?php $result = mysql_query("SELECT subject, count(usr_users.subject)as su
Array ( [#conversation] => 1 [#new] => 1 )
Select语句如何让它只回显散列标记
<?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);
?>
试试这个
<?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>";}
?>
它不会做你认为它会做的事情。您希望通过迭代数组来执行该操作。演示:
输出:
#对话#新的
演示:@chris85这是如何实现的?抱歉,PHPAnswer发布了演示如何使用
foreach
的新消息。
foreach($t as $row=>$value ){
echo $row."<br>";
}
foreach($t as $row=>$value ){
echo str_replace('#','',$row) ;
echo "</br>";
}
conversation
new
$array = array("#conversation", "#new");
$t=array_count_values($array);
foreach($t as $hash => $count) {
echo $hash . "\n";
}