在 PHP 中按指定列对多维数组进行排序
要在 PHP 中按特定列对多维数组进行排序,请使用内置的在 PHP 函数 usort 或 uasort 中。排序的关键是提供自定义比较函数来确定数组元素的顺序。
用于排序的自定义比较函数
自定义比较函数接受两个元素数组作为输入并返回一个整数:
按单列排序
假设您有一个名为的多维数组$data 其中每个元素代表具有多列的记录。要按 'name' 列对数组进行排序,请使用以下代码:
usort($data, function($a, $b) { return strcmp($a['name'], $b['name']); });
此自定义比较函数使用 strcmp 函数来比较每个元素的 'name' 列。排序后的数组将根据 'name' 列按字母顺序排列元素。
按多列排序
按多列排序,将附加参数传递给自定义比较函数。例如,要按 '数字' 排序,然后按 '名称' 排序:
usort($data, function($a, $b) { if ($a['number'] == $b['number']) { return strcmp($a['name'], $b['name']); } return $a['number'] - $b['number']; });
高级功能
您还可以指定以下高级特点:
以上是如何在 PHP 中按指定列对多维数组进行排序?的详细内容。更多信息请关注PHP中文网其他相关文章!