A-A+
PHP二维数组使用时间重新排序
接上一篇的文章,两个数据表合并成一个数组之后,我的输出是使用 JS 来刷新控制的,所以需要做一个输出控制,如果是数据量太大,直接输出的话,性能会下降许多,好了,今天在输出的时候发现需要使用时间来排序,因为两个表里面的数据时间都是不一样的,导致合并之后的时间有前有后,从PHP手册里面翻了个遍,没有PHP内设的函数,好吧,只能自己写一个了,如下:
- function arraySort($arr, $keys, $type = 'asc') {
- $keysvalue = $new_array = array();
- foreach ($arr as $k => $v){
- $keysvalue[$k] = $v[$keys];
- }//www.xiariboke.net
- $type == 'asc' ? asort($keysvalue) : arsort($keysvalue);
- reset($keysvalue);
- foreach ($keysvalue as $k => $v) {
- $new_array[$k] = $arr[$k];
- }
- return $new_array;
- }
好了,既然没有函数,哪就只好自己搞一个出来了,调用的方法很简单,如下:
- $arr[] = array("name"=>"1","time"=>1) ;
- $arr[] = array("name"=>"2","time"=>2);
- arraySort($arr,"time","desc");
完美的实现了二维数组使用时间来进行排序,这样在页面中的显示就好多了。