PHP中的二维数组排序主要用到了两种函数:usort() 和 array_multisort()。
usort()函数是用来对数组中的元素按照指定的排序方法进行排序的函数,它接收两个参数:第一个参数是要排序的数组,第二个参数是一个排序函数,用来指定如何排序。
//定义一个排序函数 function my_sort($a, $b){ if ($a == $b) return 0; return ($a < $b) ? -1 : 1; } //定义一个二维数组 $arr = array( array('name'=>'tom','age'=>20), array('name'=>'lily','age'=>18), array('name'=>'jerry','age'=>19) ); //使用usort()函数对数组进行排序 usort($arr, "my_sort"); //输出排序后的数组 print_r($arr); //输出结果 Array ( [0] => Array ( [name] => lily [age] => 18 ) [1] => Array ( [name] => jerry [age] => 19 ) [2] => Array ( [name] => tom [age] => 20 ) )
以上代码中,我们使用usort()函数对一个二维数组进行排序,我们先定义了一个排序函数my_sort,将其作为参数传递给usort()函数,输出排序后的结果。
array_multisort()函数是可以对多个数组或多维数组进行排序的函数,它可以根据指定的键名或者键值对数组进行排序。
//定义一个二维数组 $arr = array( array('name'=>'tom','age'=>20), array('name'=>'lily','age'=>18), array('name'=>'jerry','age'=>19) ); //使用array_multisort()函数对数组进行排序 array_multisort($arr, SORT_DESC, 'age'); //输出排序后的数组 print_r($arr); //输出结果 Array ( [0] => Array ( [name] => tom [age] => 20 ) [1] => Array ( [name] => jerry [age] => 19 ) [2] => Array ( [name] => lily [age] => 18 ) )
以上代码中,我们使用array_multisort()函数对一个二维数组进行排序,我们指定了排序的方式为降序,指定的排序键名为age,输出排序后的结果。
PHP中的二维数组排序可以使用usort()函数和array_multisort()函数来实现,它们可以根据指定的排序方法和排序键名对数组进行排序,从而达到我们想要的排序结果。
本文链接:http://task.lmcjl.com/news/8118.html