PHP二维数组指定字段进行分组遍历

PHP二维数组指定字段进行分组遍历使用很频繁,可以定向输出二维数组不同格式。

示例方法: 先取出要排序字段的值组成为一维数组,按键值对值进行排序并遍历值数组,其中键对应赋值给结果数组。
过程:使用foreach循环遍历数组,将数组元素值作为二维数组的索引,从而实现分组。
这里使用二维数组下标指定字段,示例
$arr:数据源
$keyField:作为分组依据的键名
$ret:分组后的结果
$user_List = array(
array('id' => '1','name' => '张三', 'age' =>'10'),
array('id' => '2','name' => '李四', 'age' =>'20'),
array('id' => '3','name' => '王五', 'age' =>'30'),
array('id' => '4','name' => '赵六', 'age' =>'30'),
array('id' => '5','name' => '钱七', 'age' =>'20'),
array('id' => '6','name' => '周八', 'age' =>'10'),
);
//dataArr:需要分组的数据;keyStr:分组依据
//$res = '';$res= array();
foreach ($user_List as $k => $v) { //数据根据日期分组
$res[$v['age']][] = $v;
}
print_r ($res);
分组结果为:
Array (
[10] => Array (
[0] => Array ([id] => 1 [name] => 张三 [age] => 10 )
[1] => Array ( [id] => 6 [name] => 周八 [age] => 10 ) )
[20] => Array (
[0] => Array ( [id] => 2 [name] => 李四 [age] => 20 )
[1] => Array ( [id] => 5 [name] => 钱七 [age] => 20 ) )
[30] => Array (
[0] => Array ( [id] => 3 [name] => 王五 [age] => 30 )
[1] => Array ( [id] => 4 [name] => 赵六 [age] => 30 ) )
)
结果实现了按age(10,20,30)进行分组。

#现在前往

精选留言

PHP,二维,数组,指定
sample
2022-11-25
写留言
签到
投稿
QQ咨询
返回顶部