问:
比如
array(array('id' => '10'),array('id' => '2'),array('id' => '10'),array('id' => '3'),array('id' => '2'));
怎么获取这个二维数组中相同id的数组有几个。id是多少啊!
答:
$a = array(array('id' => '10'),array('id' => '2'),array('id' => '10'),array('id' => '3'),array('id' => '2')); $ids = array(); foreach($a as $k=>$v) { foreach($v as $value) { if(!in_array($value,$ids)) $ids[] = $value; } } foreach($a as $k=>$v) { foreach($v as $value) { foreach($ids as $key=>$id) { if($id == $value) { $res[$key]['id'] = $id; $res[$key]['num']++; } } } } print_r($ids); print_r($res); Array ( [0] => 10 [1] => 2 [2] => 3 ) Array ( [0] => Array ( [id] => 10 [num] => 2 ) [1] => Array ( [id] => 2 [num] => 2 ) [2] => Array ( [id] => 3 [num] => 1 ) )