全网整合营销服务商

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

免费咨询热线: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 


相关文章: 建站主机与虚拟主机有何区别?如何选择最优方案?  为什么Go需要go mod文件_Go go mod文件作用说明  如何用免费手机建站系统零基础打造专业网站?  北京专业网站制作设计师招聘,北京白云观官方网站?  jQuery 常见小例汇总  免费制作小说封面的网站有哪些,怎么接网站批量的封面单?  建站之星如何助力网站排名飙升?揭秘高效技巧  香港服务器网站生成指南:免费资源整合与高速稳定配置方案  网站制作软件有哪些,制图软件有哪些?  如何通过.red域名打造高辨识度品牌网站?  C#怎么使用委托和事件 C# delegate与event编程方法  陕西网站制作公司有哪些,陕西凌云电器有限公司官网?  制作网站的软件免费下载,免费制作app哪个平台好?  微课制作网站有哪些,微课网怎么进?  建站之星24小时客服电话如何获取?  建站DNS解析失败?如何正确配置域名服务器?  微信小程序制作网站有哪些,微信小程序需要做网站吗?  建站VPS推荐:2025年高性能服务器配置指南  建站主机无法访问?如何排查域名与服务器问题  如何在建站之星网店版论坛获取技术支持?  东莞专业网站制作公司有哪些,东莞招聘网站哪个好?  广州营销型建站服务商推荐:技术优势与SEO优化解析  PHP 500报错的快速解决方法  长沙做网站要多少钱,长沙国安网络怎么样?  官网建站费用明细查询_企业建站套餐价格及收费标准指南  如何做网站制作流程,*游戏网站怎么搭建?  宁波免费建站如何选择可靠模板与平台?  c++23 std::expected怎么用 c++优雅处理函数错误返回【详解】  如何快速生成橙子建站落地页链接?  青浦网站制作公司有哪些,苹果官网发货地是哪里?  定制建站方案优化指南:企业官网开发与建站费用解析  建站之星伪静态规则如何正确配置?  电视网站制作tvbox接口,云海电视怎样自定义添加电视源?  简单实现Android验证码  天河区网站制作公司,广州天河区如何办理身份证?需要什么资料有预约的网站吗?  外汇网站制作流程,如何在工商银行网站上做外汇买卖?  深圳企业网站制作设计,在深圳如何网上全流程注册公司?  佛山企业网站制作公司有哪些,沟通100网上服务官网?  湖北网站制作公司有哪些,湖北清能集团官网?  如何选择靠谱的建站公司加盟品牌?  如何高效完成独享虚拟主机建站?  阿里云网站制作公司,阿里云快速搭建网站好用吗?  免费网站制作模板下载,除了易企秀之外还有什么H5平台可以制作H5长页面,最好是免费的?  如何设置并定期更换建站之星安全管理员密码?  湖州网站制作公司有哪些,浙江中蓝新能源公司官网?  如何访问已购建站主机并解决登录问题?  制作网站公司那家好,网络公司是做什么的?  高端建站如何打造兼具美学与转化的品牌官网?  宁波自助建站系统如何快速打造专业企业网站?  简历在线制作网站免费,免费下载个人简历的网站是哪些? 

您的项目需求

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