全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

PHP实现二维数组按指定的键名排序的方法示例

本文实例讲述了PHP实现二维数组按指定的键名排序的方法。分享给大家供大家参考,具体如下:

<?php
/*二维数组按指定的键值排序*/
function array_sort($array,$keys,$type='asc'){
  if(!isset($array) || !is_array($array) || empty($array)){
    return '';
  }
  //排序字段名,如:id
  if(!isset($keys) || trim($keys)==''){
    return '';
  }
  //排序方式,如:desc、asc
  if(!isset($type) || $type=='' || !in_array(strtolower($type),array('asc','desc'))){
    return '';
  }
  //定义一个数组
  $keysvalue=array();
  foreach($array as $key=>$val){
    //对排序字段值进行过滤
    $val[$keys] = str_replace('-','',$val[$keys]);
    $val[$keys] = str_replace(' ','',$val[$keys]);
    $val[$keys] = str_replace(':','',$val[$keys]);
    //将记录中指定的键名放入数组中,如:[0]=>5,[1]=>3,[2]=>6
    $keysvalue[] =$val[$keys];//排序字段,如:id     索引=》排序键名
  }
  asort($keysvalue); //按值升序排序,且保持键名与键值之间的索引关系,如:[1]=>3,[0]=>5,[2]=>6
  reset($keysvalue); //指针重新指向数组第一个
  foreach($keysvalue as $key=>$vals) {
    $keysort[] = $key;//0=>[1],1=>[0],2=>[2]
  }
  $keysvalue = array();
  $count=count($keysort);//排序记录数
  if(strtolower($type) != 'asc'){//降序
    for($i=$count-1; $i>=0; $i--) {
      $keysvalue[] = $array[$keysort[$i]];
    }
  }else{//升序
    for($i=0; $i<$count; $i++){
      $keysvalue[] = $array[$keysort[$i]];
    }
  }
  return $keysvalue;
}
$array=array(
  array('name'=>'Tom','age'=>'23','like'=>'beer'),
  array('name'=>'Trump','age'=>'50','like'=>'Food'),
  array('name'=>'Jack','age'=>'26','like'=>'Travel')
);
print_r(array_sort($array,'age'));
?>

运行结果:

Array
(
  [0] => Array
    (
      [name] => Tom
      [age] => 23
      [like] => beer
    )
  [1] => Array
    (
      [name] => Jack
      [age] => 26
      [like] => Travel
    )
  [2] => Array
    (
      [name] => Trump
      [age] => 50
      [like] => Food
    )
)

PS:这里再为大家推荐2款比较实用的相关在线排序工具供大家参考使用:

在线中英文根据首字母排序工具:
http://tools./aideddesign/zh_paixu

在线文本倒序翻转排序工具:
http://tools./aideddesign/flipped_txt

更多关于PHP相关内容感兴趣的读者可查看本站专题:《php排序算法总结》、《PHP数组(Array)操作技巧大全》、《php字符串(string)用法总结》、《php常用函数与技巧总结》、《PHP错误与异常处理方法总结》、《php面向对象程序设计入门教程》及《php常见数据库操作技巧汇总》

希望本文所述对大家PHP程序设计有所帮助。


# PHP  # 二维数组  # 键名  # 排序  # php对二维数组按指定键值key排序示例代码  # php数组实现根据某个键值将相同键值合并生成新二维数组的方法  # PHP二维数组实现去除重复项的方法【保留各个键值】  # PHP按指定键值对二维数组进行排序的方法  # php二维数组按某个键值排序的实例讲解  # php自定义排序uasort函数示例【二维数组按指定键值排序】  # php二维数组用键名分组相加实例函数  # 详解PHP 二维数组排序保持键名不变  # PHP实现通过二维数组键值获取一维键名操作示例  # 升序  # 程序设计  # 键值  # 操作技巧  # 相关内容  # 第一个  # 感兴趣  # 给大家  # 更多关于  # 所述  # 面向对象  # 再为  # 组中  # 首字母  # 字段名  # 降序  # 讲述了  # empty  # return 


相关文章: 西安大型网站制作公司,西安招聘网站最好的是哪个?  如何制作新型网站程序文件,新型止水鱼鳞网要拆除吗?  如何解决VPS建站LNMP环境配置常见问题?  建站之星ASP如何实现CMS高效搭建与安全管理?  广州网站制作的公司,现在专门做网站的公司有没有哪几家是比较好的,性价比高,模板也多的?  潮流网站制作头像软件下载,适合母子的网名有哪些?  早安海报制作网站推荐大全,企业早安海报怎么每天更换?  企业在线网站设计制作流程,想建设一个属于自己的企业网站,该如何去做?  公司网站制作价格怎么算,公司办个官网需要多少钱?  建站主机是否等同于虚拟主机?  建站主机选哪家性价比最高?  常州自助建站费用包含哪些项目?  车管所网站制作流程,交警当场开简易程序处罚决定书,在交警网站查询不到怎么办?  再谈Python中的字符串与字符编码(推荐)  番禺网站制作公司哪家值得合作,番禺图书馆新馆开放了吗?  青岛网站建设如何选择本地服务器?  如何选择可靠的免备案建站服务器?  天河区网站制作公司,广州天河区如何办理身份证?需要什么资料有预约的网站吗?  如何在阿里云虚拟机上搭建网站?步骤解析与避坑指南  已有域名如何免费搭建网站?  国美网站制作流程,国美电器蒸汽鍋怎么用官方网站?  内网网站制作软件,内网的网站如何发布到外网?  西安专业网站制作公司有哪些,陕西省建行官方网站?  如何用狗爹虚拟主机快速搭建网站?  如何用虚拟主机快速搭建网站?详细步骤解析  c# Task.Yield 的作用是什么 它和Task.Delay(1)有区别吗  建站主机SSH密钥生成步骤及常见问题解答?  盘锦网站制作公司,盘锦大洼有多少5G网站?  自助网站制作软件,个人如何自助建网站?  如何快速重置建站主机并恢复默认配置?  建站之星安装后如何配置SEO及设计样式?  如何用5美元大硬盘VPS安全高效搭建个人网站?  山东网站制作公司有哪些,山东大源集团官网?  如何快速搭建个人网站并优化SEO?  在线流程图制作网站手机版,谁能推荐几个好的CG原画资源网站么?  制作国外网站的软件,国外有哪些比较优质的网站推荐?  建站之星安装模板失败:服务器环境不兼容?  如何在Golang中使用encoding/gob序列化对象_存储和传输数据  制作假网页,招聘网的薪资待遇,会有靠谱的吗?一面试又各种折扣?  网站制作需要会哪些技术,建立一个网站要花费多少?  制作网站的过程怎么写,用凡科建站如何制作自己的网站?  关于BootStrap modal 在IOS9中不能弹出的解决方法(IOS 9 bootstrap modal ios 9 noticework)  深圳网站制作费用多少钱,读秀,深圳文献港这样的网站很多只提供网上试读,但有些人只要提供试读的文章就能全篇下载,这个是怎么弄的?  免费的流程图制作网站有哪些,2025年教师初级职称申报网上流程?  深圳 网站制作,深圳招聘网站哪个比较好一点啊?  javascript中的try catch异常捕获机制用法分析  如何高效生成建站之星成品网站源码?  安云自助建站系统如何快速提升SEO排名?  黑客如何利用漏洞与弱口令入侵网站服务器?  如何用腾讯建站主机快速创建免费网站? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。