php对二维数组进行排序 php数据排序 php排序

26 篇文章 1 订阅
订阅专栏

php对一维数组排序自带函数就有很多

PHP - 数组的排序函数

sort() - 以升序对数组排序
rsort() - 以降序对数组排序
asort() - 根据值,以升序对关联数组进行排序
ksort() - 根据键,以升序对关联数组进行排序
arsort() - 根据值,以降序对关联数组进行排序
krsort() - 根据键,以降序对关联数组进行排序

但是,对于二维数组没有目前函数可以直接解决

可以利用下面二个函数对二维数组以某个字段排序

1.array_column() 返回输入数组中某个单一列的值。

2.array_multisort() 函数返回排序数组。您可以输入一个或多个数组。函数先对第一个数组进行排序,接着是其他数组,如果两个或多个值相同,它将对下一个数组进行排序。

代码实现(根据 num字段从高到低):

数组未排序:

array(12) {
  [0]=>
  array(2) {
    ["name"]=>
    string(9) "司徒镇"
    ["num"]=>
    float(57.6)
  }
  [1]=>
  array(2) {
    ["name"]=>
    string(9) "延陵镇"
    ["num"]=>
    float(46.9)
  }
  [2]=>
  array(2) {
    ["name"]=>
    string(9) "珥陵镇"
    ["num"]=>
    float(25.5)
  }
  [3]=>
  array(2) {
    ["name"]=>
    string(9) "导墅镇"
    ["num"]=>
    float(36.9)
  }
  [4]=>
  array(2) {
    ["name"]=>
    string(9) "黄塘镇"
    ["num"]=>
    float(64.9)
  }
  [5]=>
  array(2) {
    ["name"]=>
    string(9) "吕城镇"
    ["num"]=>
    float(38.6)
  }
  [6]=>
  array(2) {
    ["name"]=>
    string(9) "陵口镇"
    ["num"]=>
    float(25.5)
  }
  [7]=>
  array(2) {
    ["name"]=>
    string(9) "访仙镇"
    ["num"]=>
    float(32)
  }
  [8]=>
  array(2) {
    ["name"]=>
    string(9) "界牌镇"
    ["num"]=>
    float(58.5)
  }
  [9]=>
  array(2) {
    ["name"]=>
    string(9) "丹北镇"
    ["num"]=>
    float(230.3)
  }
  [10]=>
  array(2) {
    ["name"]=>
    string(12) "云阳街道"
    ["num"]=>
    float(209.7)
  }
  [11]=>
  array(2) {
    ["name"]=>
    string(12) "曲阿街道"
    ["num"]=>
    float(319.1)
  }
}

 代码实现($data['data']上面代码源数据):

//根据字段num对数组$data进行降序排列
$all_num = array_column($data['data'],'num');
array_multisort($all_num,SORT_DESC,$data['data']);

 结果:

array(12) {
  [0]=>
  array(2) {
    ["name"]=>
    string(12) "曲阿街道"
    ["num"]=>
    float(319.1)
  }
  [1]=>
  array(2) {
    ["name"]=>
    string(9) "丹北镇"
    ["num"]=>
    float(230.3)
  }
  [2]=>
  array(2) {
    ["name"]=>
    string(12) "云阳街道"
    ["num"]=>
    float(209.7)
  }
  [3]=>
  array(2) {
    ["name"]=>
    string(9) "黄塘镇"
    ["num"]=>
    float(64.9)
  }
  [4]=>
  array(2) {
    ["name"]=>
    string(9) "界牌镇"
    ["num"]=>
    float(58.5)
  }
  [5]=>
  array(2) {
    ["name"]=>
    string(9) "司徒镇"
    ["num"]=>
    float(57.6)
  }
  [6]=>
  array(2) {
    ["name"]=>
    string(9) "延陵镇"
    ["num"]=>
    float(46.9)
  }
  [7]=>
  array(2) {
    ["name"]=>
    string(9) "吕城镇"
    ["num"]=>
    float(38.6)
  }
  [8]=>
  array(2) {
    ["name"]=>
    string(9) "导墅镇"
    ["num"]=>
    float(36.9)
  }
  [9]=>
  array(2) {
    ["name"]=>
    string(9) "访仙镇"
    ["num"]=>
    float(32)
  }
  [10]=>
  array(2) {
    ["name"]=>
    string(9) "珥陵镇"
    ["num"]=>
    float(25.5)
  }
  [11]=>
  array(2) {
    ["name"]=>
    string(9) "陵口镇"
    ["num"]=>
    float(25.5)
  }
}

完美解决 奈斯 

PHP按指定键值对二维数组进行排序的方法
10-23
主要介绍了PHP按指定键值对二维数组进行排序的方法,涉及PHP二维数组的遍历及array_multisort函数的使用技巧,需要的朋友可以参考下
php二维数组进行排序的简单实例
12-18
继上一篇文章:PHP二维数组排序自定义函数,今天,我们再介绍一个php二维数组排序的例子。php二维数组排序很简单,主要用到array_multisort函数。例子:复制代码 代码如下:<?php /** * php二维数组排序 * ...
php 一维数组和二维数组排序
最新发布
weixin_51957364的博客
01-09 477
/ 按照sort字段升序 其中SORT_ASC表示升序 SORT_DESC表示降序。// 先按照sort字段升序,再按照name字段降序。// 先取出要排序的字段的值。// 先取出要排序的字段的值。
php二维数组排序
qq_29744347的博客
04-27 6706
文章目录测试数据通过usort排序通过array_multisort排序 测试数据 $arr = [ 'a' => ['a' => 11, 'b' => 12, 'c' => 13], 'b' => ['a' => 10, 'b' => 13, 'c' => 12], 'c' => ['a' => 12, 'b' => 11, 'c' => 10],
PHP 二维数组排序方法】
LHZ238760的博客
05-14 512
二维数组排序
PHP 二维数组排序
Peak Xin's Blog
01-15 2203
PHP 二维数组排序 1 sort()和rsort() 1.1 sort() 函数对数组根据值进行升序排序; 为数组中的单元赋予新的键名,原有的键名将被删除; 如果成功则返回 TRUE,否则返回 FALSE; $cars=array('a'=>"Volvo",2=>"BMW",'b'=>"Ford",6=>"Chevrolet",5=>"MG"); sort($cars); v
php 二维数组 随机排序_PHP二维数组排序的3种方法和自定义函数分享
weixin_28972031的博客
03-09 517
关于排序一般我们都是通过数据库或者nosql(eg:redis)先排好序然后输出到程序里直接使用,但是有些时候我们需要通过PHP直接来对数组进行排序,而在PHP里存储数据用到最多的就是对象和数组,但处理较多的就是数组,因为有非常丰富的内置函数库(其实对象一定程度上也可以理解为是数组),这些函数库很大程度上可以帮助我们实现某些功能。常用的系统函数有sort、asort、arsort、ksort、kr...
php 重新排列数据、,重新排列(重新排序排序)阵列,你所希望的方式PHP
weixin_39907596的博客
04-14 275
$yourArray;sort($yourArray);print_r($yourArray);// Now alphabetical此外,如果你写一个函数不过你想要的值进行排序,使用usort()function cmp($a, $b){if ($a == $b) {return 0;}return ($a < $b) ? -1 : 1;}$a = array(3, 2, 5, 6, 1)...
php 二维数组时间排序实现代码
10-21
主要介绍了php 二维数组时间排序实现代码,需要的朋友可以参考下
php 二维数组 随机排序_PHP二维数组排序简单实现方法
weixin_42517963的博客
03-09 264
本文实例讲述了PHP二维数组排序简单实现方法。分享给大家供大家参考,具体如下:function multi_compare($a, $b){$val_arr = array('gold'=>'asc','silver'=>'desc'//还可以增加额外的排序条件);foreach($val_arr as $key => $val){if($a[$key] == $b[$key])...
PHP二维数组中的某个字段的值进行排序
读万卷书,行万里路
03-20 818
/** *二维数组根据字段进行排序 *$field 字段名 *SORT_ASC 升序 *SORT_DESC 降序 */ function arraySequence($array, $field, $sort = 'SORT_DESC') { $arrSort = array(); foreach ($array as $uniqid => $row) ...
php 二维数组排序函数,PHP函数usort根据自定义的比较函数对二维数组进行排序 - YangJunwei...
weixin_39548490的博客
03-10 220
今天分享一个给二维数组排序php方法,用到函数usort(),可根据自定义规则进行排序。假定有如下二维数组[guess_subject] => Array([0] => Array([subject_id] => 4587[game_id] => 9228[parent_category_id] => 78[subject_date_time] => 1490...
php二维数组排序降序,PHP二维数组排序 array_multisort
weixin_28754365的博客
03-19 307
这篇文章主要介绍的内容是关于PHP二维数组排序 array_multisort,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下对2维数组或者多维数组排序是常见的问题,在PHP中我们有个专门的多维数组排序函数,下面简单介绍下:array_multisort(array1,sorting order, sorting type,array2,array3..) 是对多个数组或多维数组进行...
php二维数组根据字段排序
weixin_38008473的博客
02-16 126
【代码】php二维数组根据字段排序
php根据二维数组中的某个字段进行排序
热门推荐
jqdfTiTan的博客
11-06 1万+
需求:有一个学生信息的二维数组,需要根据年龄从大到小排序,数组如下: $arrUsers = array( array( 'id' =&gt; 1, 'name' =&gt; '张三', 'age' =&gt; 25, ), array( 'id' =&gt; 2...
php 二维数组重组排序,PHP二维数组排序
weixin_29290259的博客
03-18 176
我们在开发过程中,经常会遇到给数组排序,熟悉PHP的朋友都知道sort、rsort、ksort、krsort等等这些常用的数组排序函数,但是这些函数都是给一维数组排序的,PHP有没有给二维数组或者多维数组排序的函数呢?答案是有的,array_multisort这个函数就是用来给多维数组排序的。例如:$students = array(array('id' => 1, 'name' =>...
php 二维数组排序问题
奔跑的长毛象
05-31 940
标题遇到的问题 记录上 留用 $data = array( 0=>array('time'=>'2019-05-24 10:09:33','a'=>'time'), 1=>array('time'=>'2019-05-28 03:23:22','b'=>'kaishi'), 2=>array('time'=>'2019-05-21 18:3...
PHP二维数组排序
baidu_36095053的博客
08-11 310
需求:二维数组中根据数组元素中的某个字段进行排序 比如,我们有如下数组: $arr = [ ['id'=>1 , 'money' => 960], ['id'=>2 , 'money' => 180], ['id'=>3 , 'money' => 1050], ['id'=>4 , 'money' => 840], ['id'=>1 , 'money' => 755], ['id'=>2
PHP二维数组按值中的值指定排序
qq_37901404的博客
11-08 1028
$arr = array( array('name'=>'lisi','order'=>12), array('name'=>'zhangsan','order'=>14), array('name'=>'wangwu','order'=>13), ); $arr1 = array_map(create_function('$n', 'return $n["order"];
php二维数组的id进行排序
02-07
PHP 中,可以使用函数 `usort()` 对二维数组的 id 进行排序。 例如,假设你有一个二维数组 `$data`,包含多个元素,每个元素都是一个包含 id 和 name 属性的数组。你可以使用以下代码对这个数组按 id 从小到大进行排序: ``` usort($data, function($a, $b) { return $a['id'] - $b['id']; }); ``` 你也可以使用其他函数来实现排序,例如 `sort()` 或 `asort()`。不过,这些函数只能对一维数组进行排序,因此你需要使用其他方法来对二维数组进行排序

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
写文章

热门文章

  • Linux -bash: telnet: 未找到命令 16462
  • tp5 No function matches the given name and argument types. You might need to add explicit type cast 12220
  • Trying to access array offset on value of type int 11990
  • Navicat运行sql文件导入数据不全或导入失败 9894
  • phpstudy网站或站点创建成功,打开无响应 9469

分类专栏

  • linux 11篇
  • php 26篇
  • mysql 2篇
  • jiva算法题 1篇
  • java 2篇
  • navicat 2篇
  • xshell 1篇
  • 微信 1篇
  • thinkphp5 8篇
  • pgsql+php 7篇
  • vue 1篇
  • Dt 1篇
  • python 1篇

最新评论

  • phpstudy站点404访问遭到拒绝 首页可以访问 接口不能访问

    m0_68279902: 太赞了,我终于成功了,太感谢了

  • mysql数据库恢复,binlog日志回滚

    Hero_rong: 好文章必须点赞加收藏!!

  • Mysql优化习惯|建表规约丶SQL规约丶索引规约

    Hero_rong: 好文章必须点赞加收藏

  • yii2框架路由不存在或者访问接口404

    Hero_rong: 好厉害,一阵见血!!收藏了大佬!!!

  • phpstudy站点404访问遭到拒绝 首页可以访问 接口不能访问

    elifbliank: 还有个解决办法,重新下载全部删干净重新下载,我就是这样解决的

大家在看

  • [AIGC] 深入理解Java Map接口
  • Excel中如何用公式列出包含特定文本的所有单元格?
  • [AIGC] Java List接口详解
  • Notion 中文版,2024年 6 月汉化 Notion 的最新方法!
  • 供应链初学者手册——第一部分:供应链基础知识 278

最新文章

  • TP框架报错:unserialize(): Error at offset 0 of 39 bytes
  • 用xshell或ftp连接本地虚拟机linux系统,centos7修改动态ip地址
  • vmWare虚拟机下载安装详细教程,手把手一步一步教学
2024年4篇
2023年11篇
2022年17篇
2021年32篇

目录

目录

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值

聚圣源姓鲍怎么起名10月25日直播吧录像种马小说推荐艺术培训学校起名用远起名字免费下载小说网叫魂1768年中国妖术大恐慌钟姓起名夸人的词语微星小飞机贾姓起名字女孩能源类的公司起名她的小梨涡必由之路娱乐圈火爆天王张姓羊年宝宝起名亚米契斯刘白羽罗恩儿子为什么要杀死罗恩吴姓女孩起名软件公司取名起名大全大全集好想听你说爱我pdffactorypro令我难忘的一件事neets剧多多真想和你一起看星星澄海3c5.49地图白卿言萧容衍免费阅读男孩起英文名什么名字比较合适淀粉肠小王子日销售额涨超10倍罗斯否认插足凯特王妃婚姻让美丽中国“从细节出发”清明节放假3天调休1天男孩疑遭霸凌 家长讨说法被踢出群国产伟哥去年销售近13亿网友建议重庆地铁不准乘客携带菜筐雅江山火三名扑火人员牺牲系谣言代拍被何赛飞拿着魔杖追着打月嫂回应掌掴婴儿是在赶虫子山西高速一大巴发生事故 已致13死高中生被打伤下体休学 邯郸通报李梦为奥运任务婉拒WNBA邀请19岁小伙救下5人后溺亡 多方发声王树国3次鞠躬告别西交大师生单亲妈妈陷入热恋 14岁儿子报警315晚会后胖东来又人满为患了倪萍分享减重40斤方法王楚钦登顶三项第一今日春分两大学生合买彩票中奖一人不认账张家界的山上“长”满了韩国人?周杰伦一审败诉网易房客欠租失踪 房东直发愁男子持台球杆殴打2名女店员被抓男子被猫抓伤后确诊“猫抓病”“重生之我在北大当嫡校长”槽头肉企业被曝光前生意红火男孩8年未见母亲被告知被遗忘恒大被罚41.75亿到底怎么缴网友洛杉矶偶遇贾玲杨倩无缘巴黎奥运张立群任西安交通大学校长黑马情侣提车了西双版纳热带植物园回应蜉蝣大爆发妈妈回应孩子在校撞护栏坠楼考生莫言也上北大硕士复试名单了韩国首次吊销离岗医生执照奥巴马现身唐宁街 黑色着装引猜测沈阳一轿车冲入人行道致3死2伤阿根廷将发行1万与2万面值的纸币外国人感慨凌晨的中国很安全男子被流浪猫绊倒 投喂者赔24万手机成瘾是影响睡眠质量重要因素春分“立蛋”成功率更高?胖东来员工每周单休无小长假“开封王婆”爆火:促成四五十对专家建议不必谈骨泥色变浙江一高校内汽车冲撞行人 多人受伤许家印被限制高消费

聚圣源 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化