TP5 如何统计 数组中 每个值出现的次数 并组建新的数组

新手上路,请多包涵

array(3) { [0]=> array(1) { ["name"]=> string(10) "女裤1858" } [1]=> array(1) { ["name"]=> string(10) "女裤1858" } [2]=> array(1) { ["name"]=> string(8) "T恤1245" } }

比如 统计完成后组成的格式

array(2) { [0]=> array(2) { ["name"]=> string(10) "女裤1858",["cishu"]=> int(2)} [1]=> array(2) { ["name"]=> string(10) "T桖",["cishu"]=> int(1) } }

大佬们能看懂吗

阅读 2.9k
1 个回答
$arr = [ 
    [ "name"=> "女裤1858" ], 
    [ "name"=> "女裤1858" ],
    [ "name"=> "T恤1245" ]
];

$newArr = [];

foreach ($arr as $key => $value) {
    $name = $value['name'];
    if (empty($newArr[$name])) {
        $newArr[$name] = [
            'name'  => $name,
            'cishu' => 1,
        ];
    } else {
        $newArr[$name]['cishu'] ++;
    }
}
$newArr = array_values($newArr);

echo '<pre>';
var_dump($newArr);
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题