二维数组排序
2017-05-03 本文已影响20人
Sheehan
一个二维数组的排序方法, 收集自网络
/**
* @param array $arr 要排序的二维数组
* @param string $sortStr 排序字段
* @param string $order 排序方式 ASC/DESC
* @return array 排序后的二维数组
*/
protected function rSortArray($arr = [], $sortStr='', $order='ASC')
{
$sort = array(
'direction' => 'SORT_'.$order, //排序顺序标志 SORT_DESC 降序;SORT_ASC 升序
'field' => $sortStr, //排序字段
);
$arrSort = array();
foreach ($arr AS $uniqid => $row) {
foreach ($row AS $key => $value) {
$arrSort[$key][$uniqid] = $value;
}
}
if ($sort['direction']) {
array_multisort($arrSort[$sort['field']], constant($sort['direction']), $arr);
}
return $arr;
}