📅  最后修改于: 2023-12-03 14:54:41.354000             🧑  作者: Mango
在 PHP 中,我们可以使用 array_multisort
函数对一个多维数组按照指定的键值进行排序。本文将介绍如何对一个多维数组按照指定的键值进行排序,并对排序后的结果进行输出。
首先,我们需要准备一个多维数组以及一个用于排序的键值。我们假设这个多维数组中每个元素都包含一个名称和一个年龄,我们想要按照年龄从小到大的顺序对这个多维数组进行排序:
$people = array(
array('name' => 'Alice', 'age' => 25),
array('name' => 'Bob', 'age' => 20),
array('name' => 'Charlie', 'age' => 30),
array('name' => 'Dave', 'age' => 22)
);
$key = 'age';
接下来,我们可以使用 array_multisort
函数对这个多维数组进行排序:
array_multisort(array_column($people, $key), SORT_ASC, $people);
这里,我们使用了 array_column
函数来提取多维数组中指定键值的列,然后将提取出的列传递给 array_multisort
函数,使其按照指定的键值进行排序。我们还指定了排序的顺序为升序。
排序后,我们可以对多维数组进行遍历,输出排序结果:
foreach ($people as $person) {
echo $person['name'] . ', ' . $person['age'] . '<br>';
}
这里,我们遍历了排序后的多维数组 $people
,并输出了每个元素的名称和年龄。
综上,我们的完整代码如下所示:
$people = array(
array('name' => 'Alice', 'age' => 25),
array('name' => 'Bob', 'age' => 20),
array('name' => 'Charlie', 'age' => 30),
array('name' => 'Dave', 'age' => 22)
);
$key = 'age';
array_multisort(array_column($people, $key), SORT_ASC, $people);
foreach ($people as $person) {
echo $person['name'] . ', ' . $person['age'] . '<br>';
}
以上就是如何使用 PHP 对一个多维数组进行排序的介绍。