php 二维数组分组,php 二维数组的分组排序实现代码
时间: 2023-09-15 16:18:03 浏览: 48
以下是 PHP 二维数组分组的实现代码:
```php
function groupBy($arr, $key) {
$result = array();
foreach($arr as $val) {
if(isset($val[$key])) {
$result[$val[$key]][] = $val;
} else {
$result[""][] = $val;
}
}
return $result;
}
```
该函数将一个二维数组按照指定的键进行分组,并返回分组后的数组。
以下是 PHP 二维数组分组排序的实现代码:
```php
function groupBySort($arr, $key) {
$result = array();
foreach($arr as $val) {
if(isset($val[$key])) {
$result[$val[$key]][] = $val;
} else {
$result[""][] = $val;
}
}
ksort($result);
return $result;
}
```
该函数将一个二维数组按照指定的键进行分组,并按键的字母顺序对分组后的数组进行排序。
相关问题
php三维数组转二维数组代码
PHP中可以使用array_values函数将三维数组转换为二维数组,代码如下:$new_array = array_values(array_map('array_values', $old_array));
PHP二维数组怎么排序
可以使用PHP中的usort函数来对二维数组进行排序。首先,定义一个比较函数,然后传递该函数和要排序的数组作为参数。比如,以下是按照某一列进行排序的示例代码:
```php
<?php
// 要排序的二维数组
$array = array(
array('name'=> 'John', 'age'=> 26),
array('name'=> 'Jane', 'age'=> 21),
array('name'=> 'Bob', 'age'=> 31)
);
// 按照age列进行排序
usort($array, function($a, $b) {
return $a['age'] - $b['age'];
});
// 输出排序后的结果
foreach($array as $row) {
echo $row['name'] . ' - ' . $row['age'] . '<br />';
}
?>
```
该代码会输出:
```
Jane - 21
John - 26
Bob - 31
```
我们可以根据具体的需求调整比较函数,以实现不同的排序结果。