码迷,mamicode.com
首页 > Web开发 > 详细

php多维数组排序

时间:2014-07-11 19:47:56      阅读:218      评论:0      收藏:0      [点我收藏+]

标签:style   blog   color   使用   2014   问题   

问题:

 

有这样一个数组$arr:

[1]=> array(3) { [0]=> string(89) "........./r1822113797800000_AIK1_20140626_190411.mp3" [1]=> string(4) "AIK1" [2]=> string(16) "18221*********" }

 

[2]=> array(3) { [0]=> string(89) "........./r1822113797800000_AIK1_20140626_190422.mp3" [1]=> string(4) "AIK1" [2]=> string(16) "1822*********" }  
......

......

要求按照时间20140626_190411来排序

这个用到了php的多维数组排序array_mutisort()函数,用法如下:

foreach($arr as $key=>$row)
                        {
                            preg_match("/[0-9]{4}_[0-9]{6}/",$row[0],$match);//使用正则表达从"........./r1822113797800000_AIK1_20140626_190422.mp3"中匹配出时间20140626_190422
                            $date_for_sort[$key] = $match[0];//将时间作为排序的关键字
                        }
array_multisort($date_for_sort,SORT_ASC,$arr);//使用$date_for_sort作为关键字对数组$arr进行升序排序

这个函数相当的好用呀~

 数组内容为中文的话,需要编码转换为GBK或者GB2312形式,它们本身就使用拼音排序的,用到了iconv()函数:

foreach($arrbelong2 as $key=>$row)
                        {                            
                            $belong2_for_sort[$key] = iconv(‘UTF-8‘, ‘GB2312‘,$row[‘fullname‘]);
                        }
 array_multisort($belong2_for_sort,SORT_ASC,$arrbelong2);

 

php多维数组排序,布布扣,bubuko.com

php多维数组排序

标签:style   blog   color   使用   2014   问题   

原文地址:http://www.cnblogs.com/Sophiawow/p/3833480.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!