在多维数组的开发中经常会用到。这里记录多维数组排序的方法,主要使用array_multisort函数。array_multisort函数返回一个排序数组。您可以输入一个或多个数组。该函数首先对第一个数组进行排序,然后对其他数组进行排序,如果两个或多个值相同,则对下一个数组进行排序。注意:字符串键将被保留,但数字键将被重新索引,从0开始并以1递增。注意:您可以在每个数组后设置排序顺序和排序类型参数。如果未设置,每个数组参数将使用默认值。['姓名'=>'李四','身高'=>40,],1=>['姓名'=>'张三','身高'=>30,],2=>['name'=>'WangWu','height'=>50,],];var_dump($students);/***将students数组中的所有身高值存为一个关键在高度数组*/$tmp=array();foreach($studentsas$k=>$v){foreach($vas$k2=>$v2){if($k2=='height'){//key是高度的存储$tmp[]=$v2;}}}var_dump($tmp);/***升序.SORT_ASC降序.SORT_DESC*/array_multisort($tmp,SORT_NUMERIC,SORT_ASC,$students);var_dump($students);exit;/***可扩展为函数*@paramarray待排序的多维数组*@paramkey以哪个键作为排序条件*@paramorder升序或降序*@returnsortedarray*/functionmultipleArraySort($array,$key,$order){返回$array;}
