用PHP对二维数组进行排序:
第一种方法:遍历生成新数组用array_multisort()
方法排序;
/**
* 二维数组的排序
* @param array arr 需要排序的二维数组
* @param stringfield 以这个数组的值来排序
* @param string direction 排序规则 SORT_ASC 升序 SORT_DESC降序
* @return array 排序后的数组
* @author http://blog.m1910.com/
*/
function sort_array(arr, field,direction = 'SORT_DESC')
{
arrSort = array();
foreach(arr AS uniqid =>row){
foreach(row ASkey=>value){arrSort[key][uniqid] = value;
}
}
array_multisort(arrSort[field], constant(direction), arr);
returnarr;
}
第二种方法:利用usort()
自定义排序进行排序
/**
* 二维数组的排序
* @param array arr 需要排序的二维数组
* @param stringfield 以这个数组的值来排序
* @return array 排序后的数组
* @author http://blog.m1910.com/
* @备注:默认升序,需要降序把a和b调换位置就好了
*/
function sort_array(arr,field)
{
usort(arr, function (a, b) use (field) {
return (a[field] - b[field]);
});
return $arr;
}
PHP对二维数组按照某个字段的值进行排序的两种方法
原文链接:https://beltxman.com/1591.html,若无特殊说明本站内容为 行星带 原创,未经同意禁止转载。
边学习边总结,很不错。
大王叫我来巡山,我把博客转一转。(*^__^*) 嘻嘻……
专业
现在不折腾了,有问题打电话
php的函数还是很好用的 有时候写了半天方法 发现已经有一个函数 就能解决了
同感,还是基础没打好
这个不错,用的时候直接过来拿,哈哈
的确是这样的!