php 二位数组排序
时间: 2023-07-20 15:08:38 浏览: 97
你可以使用 PHP 中的 `array_multisort` 函数来对二维数组进行排序。以下是一个例子:
```php
// 假设我们有一个二维数组,其中每个子数组包含两个元素:name 和 age
$people = array(
array('name' => 'John', 'age' => 25),
array('name' => 'Jane', 'age' => 30),
array('name' => 'Bob', 'age' => 20)
);
// 按照 age 从小到大排序
$ages = array_column($people, 'age');
array_multisort($ages, SORT_ASC, $people);
// 输出结果
print_r($people);
```
在上面的例子中,我们使用了 `array_column` 函数来获取二维数组中的一个列作为排序依据。然后,我们使用 `array_multisort` 函数对该列进行排序,并按照排序后的结果对整个二维数组进行排序。
相关问题
php 根据二位数组中某个值排序
可以使用 PHP 中的 `array_multisort()` 函数来根据二维数组中某个值进行排序。
示例代码如下:
```php
// 假设二维数组为 $data,需要根据 age 进行排序
$data = array(
array('name' => 'Tom', 'age' => 20),
array('name' => 'Jack', 'age' => 25),
array('name' => 'Mary', 'age' => 18),
);
// 定义一个新的数组,用于存储需要排序的列
$age = array();
foreach ($data as $key => $row) {
$age[$key] = $row['age'];
}
// 使用 array_multisort 函数进行排序
// 第一个参数为需要排序的数组,第二个参数为排序方式,第三个参数为需要排序的列
array_multisort($age, SORT_ASC, $data);
// 输出排序后的结果
print_r($data);
```
输出结果为:
```
Array
(
[0] => Array
(
[name] => Mary
[age] => 18
)
[1] => Array
(
[name] => Tom
[age] => 20
)
[2] => Array
(
[name] => Jack
[age] => 25
)
)
```
可以看到,二维数组按照 age 字段进行了升序排序。
阅读全文