php变量中重复项的计数
你好 我有一个PHP变量,如:php变量中重复项的计数,php,Php,你好 我有一个PHP变量,如: $var = 'Mark,John,Julian,Mark,Mark,Julian'; 我要数一数每一个重复的名字,然后像这样打印出来: John Mark (3) Julian (2) 如果将字符串转换为数组,则array\u count\u values()函数可能非常适合 $var = 'Mark,John,Julian,Mark,Mark,Julian'; $arr = explode(',', $var); $count = array_count_
$var = 'Mark,John,Julian,Mark,Mark,Julian';
我要数一数每一个重复的名字,然后像这样打印出来:
John
Mark (3)
Julian (2)
如果将字符串转换为数组,则array\u count\u values()函数可能非常适合
$var = 'Mark,John,Julian,Mark,Mark,Julian';
$arr = explode(',', $var);
$count = array_count_values($arr);
计数数组:
Array
(
[Mark] => 3
[John] => 1
[Julian] => 2
)
您可以这样做:
$var = 'Mark,John,Julian,Mark,Mark,Julian';
$array = [];
foreach(explode(',', $var) as $name){
if(isset($array[trim($name)]))
$array[trim($name)]++;
else
$array[trim($name)] = 1;
}
foreach($array as $name => $count){
echo $name . ($count > 1 ? ' (' . $count . ')' : '') . '<br />';
}
//prints:
Mark (3)
John
Julian (2)
$var='Mark,John,Julian,Mark,Mark,Julian';
$array=[];
foreach(分解(“,”,$var)为$name){
if(isset($array[trim($name)]))
$array[trim($name)]++;
其他的
$array[trim($name)]=1;
}
foreach($name=>$count的数组){
回显$name。($count>1?'(“.$count”):“”)。“
”;
}
//印刷品:
马克(3)
约翰
朱利安(2)
谢谢兄弟,但是我从你的代码中发现了错误解析错误:语法错误,第3行意外的“[”
@omardelo这可能是因为你还没有安装PHP5.4。要修复错误,只需安装PHP5.4或更高版本,或者只需将[]
更改为数组()
是的,你是对的,我将它改为$array=array();
现在工作得很好,感谢agine Brothers的兄弟,我尝试了你的代码,当我在循环中打印数组时,foreach($arr as$name=>$count){echo$name.('.$count.')
;
显示结果0(马克)1(约翰)2(朱利安)3(马克)4(马克)5(朱利安)
@omardealo,您正在$arr
变量上使用foreach。但是$count
数组包含结果。在您的foreach中将$arr
更改为$count
。是的,现在的结果是马克(3)约翰(1)朱利安(2)
但是我已经选择了正确的答案,你能原谅我吗,兄弟,非常感谢