0

我试图在 foreach 中计数

像这样在数组中 项目 1 项目 1 项目 2 项目 3 项目 3 项目 3 项目 3

现在这些物品来自爆炸

 $likes = explode(',', $user_likes);

然后我有

foreach($likes as $like){

  echo $like.'<br>';

}

我想要的输出是

第 1 (2) 项 第 2 (1) 项 第 3 (4) 项

所以没有双重项目,但该项目在数组中的次数

4

3 回答 3

1

print_r(array_count_values($likes));

如果您希望将其格式化为 item 1 (2) item 2 (1) 等,请执行以下操作:

$valueCount = array_count_values($likes);
foreach ($valueCount as $key => $value) {
    echo $key." (".$value.") ";
}
于 2012-12-17T20:57:28.843 回答
0

尝试这样的事情:

$scores = array();

foreach($likes as $like){
    if(!isset($scores[$like]))
    {
        $scores[$like] = 1;
    }
    else
    {
        $scores[$like]++;
    }
}

print_r($scores);
于 2012-12-17T20:54:30.450 回答
0

这...

<?php

// Counter
$i = '0';

// Array
$array = 'apple, grape, pair, plum';
$array = explode(",", $array);

// Loop
foreach ($array as $value)
  {
      $i++;
      echo '<p>#' . $i . ' - ' . $value . '</p>';
  }

?>

会输出这样的东西...

#1 - apple

#2 - grape

#3 - pair

#4 - plum
于 2012-12-17T21:15:02.687 回答