加入收藏 | 设为首页 | 会员中心 | 我要投稿 百客网 - 百科网 (https://www.baikewang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php 对多维数组排序,php多维数组排序

发布时间:2022-12-19 11:43:09 所属栏目:PHP教程 来源:
导读:  数字索引数组:

  bool usort( array &$array, callback $cmp_function )

  usort函数对指定数组(参数1)按指定方式(参数2)进行排序。

  对多维数组进行排序时,多维数组的每个元素又是一数组类
  数字索引数组:
 
  bool usort( array &$array, callback $cmp_function )
 
  usort函数对指定数组(参数1)按指定方式(参数2)进行排序。
 
  对多维数组进行排序时,多维数组的每个元素又是一数组类型,而两个数组如何比较大小?
 
  这是需要用户自定义的(是按每个数组的第一元素比较还是…)。
 
  复制代码 代码如下:
 
  //定义多维数组
 
  $a = array(
 
  array("sky", "blue"),
 
  array("apple", "red"),
 
  array("tree", "green"));
 
  //自定义数组比较函数,按数组的第二个元素进行比较。
 
  function my_compare($a, $b) {
 
  if ($a[1] < $b[1])
 
  return -1;
 
  else if ($a[1] == $b[1])
 
  return 0;
 
  else
 
  return 1;
 
  }
 
  //排序
 
  usort($a, 'my_compare');
 
  //输出结果
 
  php json多维数组_PHP多维数组_php 多维数组合并
 
  foreach($a as $elem) {
 
  echo "$elem[0] : $elem[1]
 
  ";
 
  }
 
  结果为:
 
  sky : blue
 
  tree : green
 
  apple : red
 
  关联数组:
 
  bool uasort(array &$array, callback $cmp_function)
 
  bool uksort(array &$array, callback $cmp_function)
 
  uasort, uksort用法与usort相同,其中uasort()对关联数组的值(value)进行排序PHP多维数组,uksort()对关联数组的关键字(key)进行排序。
 
  复制代码 代码如下:
 
  $a = array(
 
  'Sunday' => array(0,'7th'),
 
  'Friday' => array(5,'5th'),
 
  'Tuesday'=> array(2,'2nd'));
 
  function my_compare($a, $b) {
 
  if ($a[1] < $b[1])
 
  return -1;
 
  else if ($a[1] == $b[1])
 
  return 0;
 
  PHP多维数组_php 多维数组合并_php json多维数组
 
  else
 
  return 1;
 
  }
 
  //按$a数组的值的第二个元素(7th,5th,2nd)进行排序
 
  uasort($a, 'my_compare');
 
  foreach($a as $key => $value) {
 
  echo "$key : $value[0] $value[1]
 
  ";
 
  }
 
  //按$a数组的关键字的第二个字符(r,u,u)进行排序
 
  uksort($a, 'my_compare');
 
  foreach($a as $key => $value) {
 
  echo "$key : $value[0] $value[1]
 
  ";
 
  }
 
  结果为:
 
  Tuesday : 2 2nd
 
  Friday : 5 5th
 
  Sunday : 0 7th
 
  Friday : 5 5th
 
  Sunday : 0 7th
 
  Tuesday : 2 2nd
 

(编辑:百客网 - 百科网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!