更多>>PHP程序设计 Blog
来源:一度好 时间:2017-08-08 阅读:4207
关于PHP对多维数组的排序,比如对二维数组的排序,本身内置的有一个排序函数,那就是 array_multisort。
关于PHP的多维数组排序函数 array_multisort 的用法,下面举例说明。
假设有两个表:文章表arc,评论表message,两个表的字段如下:
arc表字段:arc_id, title, addtime
message表字段:message_id, arc_id, content, addtime
需求:将文章表按评论数从多至少降序排列。
//通过编写sql检索语句,对文章表按id降序排列,得到的数据如下: //(需要说明的是,评论数num的值,是从评论表中根据关联的arc_id获取的) $data = array( array('arc_id'=>'5','title'=>'FFFFF','num'=>'3'), array('arc_id'=>'4','title'=>'EEEEE','num'=>'9'), array('arc_id'=>'3','title'=>'CCCCC','num'=>'32'), array('arc_id'=>'2','title'=>'BBBBB','num'=>'3'), array('arc_id'=>'1','title'=>'AAAAA','num'=>'20'), ); //可通过如下代码查看: print_r($data);
//下面利用 array_multisort 函数,对数据按评论数num的值,降序排列 //排序开始 foreach($data as $k => $v){ $sort_id_desc[$k] = $v['arc_id']; //按id降序 $sort_num_desc[$k] = $v['num']; //按num降序 } //按num降序排列,num相同时,按id降序排列 // SORT_DESC 降序, SORT_ASC 升序 array_multisort($sort_num_desc, SORT_DESC, $sort_id_desc, SORT_DESC, $data); //可通过如下代码查看: print_r($data);
评论列表 |
暂时没有相关记录
|
发表评论