php 数组排序的实例代码

发布时间:2020-04-04编辑:脚本学堂
分享一个php数组排序的实例代码,包括正向排序、逆向排序、自然排序,有需要的朋友参考下。

php数组排序,代码分享。

如下:

<?php
/**
// @param array $list 查询结果
// @param string $field 排序的字段名
// @param array $sortby 排序类型
// asc正向排序 desc逆向排序 nat自然排序
// edit by wwww.jb200.com
*/
function list_sort_by($list,$field, $sortby='asc') {
   if(is_array($list)){
       $refer = $resultSet = array();
       foreach ($list as $i => $data){
           $refer[$i] = &$data[$field];
  switch ($sortby) {
  case 'asc': // 正向排序
     asort($refer);
     break;
  case 'desc':// 逆向排序
     arsort($refer); print_r($refer);echo '</br>';
     break;
  case 'nat': // 自然排序
natcasesort($refer);
  break;
  }
  } 
  foreach ( $refer as $key=> $val){
     $resultSet[] = &$list[$key];
  } 
 return $resultSet;
}
 return false;
}
$arr = array(
1 => array('id'=>1,'pid'=>0),
2 => array('id'=>2,'pid'=>1),
3 => array('id'=>3,'pid'=>1),
4 => array('id'=>4,'pid'=>3)
);
 
$list = list_sort_by($arr,'id','desc'); print_r($list);
?>

>>> 更多内容,请查看 php数组排序方法大全 <<<