首页 » 网站建设 » php指定字段排序技巧_php实现数组按多个字段排序的方法介绍附代码

php指定字段排序技巧_php实现数组按多个字段排序的方法介绍附代码

duote123 2024-12-18 0

扫一扫用手机浏览

文章目录 [+]

最靠近碰到一个问题 一个二维数组,须要按照库存量排序,然后再按照门店间隔排序。

创造了这样一个这样子的方法:

php指定字段排序技巧_php实现数组按多个字段排序的方法介绍附代码

$array1 = array(

php指定字段排序技巧_php实现数组按多个字段排序的方法介绍附代码
(图片来自网络侵删)

0=>array('id'=>8,'name'=>'Apple','age'=> 18),

1=>array('id'=>8,'name'=>'Bed','age'=>17),

2=>array('id'=>5,'name'=>'Cos','age'=>16),

3=>array('id'=>5,'name'=>'Cos','age'=>14)

);

function sortArrByManyField(){

$args = func_get_args(); // 获取函数的参数的数组

if(empty($args)){

return null;

}

$arr = array_shift($args);

if(!is_array($arr)){

throw new Exception(\公众第一个参数不为数组\公众);

}

foreach($args as $key => $field){

if(is_string($field)){

$temp = array();

foreach($arr as $index=> $val){

$temp[$index] = $val[$field];

}

$args[$key] = $temp;

}

}

$args[] = &$arr;//引用值

call_user_func_array('array_multisort',$args);

return array_pop($args);

}

$arr = sortArrByManyField($array1,'id',SORT_ASC,'name',SORT_ASC,'age',SORT_DESC);

print_r($arr);

结果如下:

array(4) {

[0]=>array(3) {

[\"大众id\"大众]=>int(5)

[\"大众name\"大众]=>string(3) \公众Cos\"大众

[\公众age\公众]=>int(16)

}

[1]=>array(3) {

[\公众id\"大众]=>int(5)

[\公众name\公众]=>string(3) \公众Cos\"大众

[\"大众age\"大众]=>int(14)

}

[2]=>array(3) {

[\公众id\"大众]=>int(8)

[\"大众name\"大众]=>string(5) \公众Apple\"大众

[\"大众age\"大众]=>int(18)

}

[3]=>array(3) {

[\"大众id\公众]=>int(8)

[\"大众name\"大众]=>string(3) \"大众Bed\公众

[\"大众age\"大众]=>int(17)

}

}

本篇文章到这里就已经全部结束了,更多其他精彩内容可以关注的php视频教程栏目!

以上便是php实现数组按多个字段排序的方法先容(附代码)的详细内容,更多请关注其它干系文章!

更多技巧请《转发 + 关注》哦!

标签:

相关文章

php为无色透明技巧_水货钻石其实也还行

从各种钻石中,可以看到大大小小的“包裹体” 图片来源:参考文献包裹体的种类多样。比钻石形成更早的包裹体,叫“原生包裹体”;与钻石同...

网站建设 2024-12-19 阅读0 评论0

phpstudy发送gbk技巧_php的文件上传

这里首先声明一下这一章的内容比较多,比较难,你要抱着和自己去世磕的态度。细微之处不放过,多敲多练是王道。 学习就像爬山,得一步一步...

网站建设 2024-12-19 阅读0 评论0