谈起php的排序初学者总会想起sort函数。但是很多时候它并不能实现我们的需求,因而再次拓展一下sort的其他兄弟。

sort:将一个数组元素从低到高进行简单的排序。

例如:$data=array(1,3,4); sort($data); print_r($data);

输出结果:Array([0]=>1 ,[1]=>3, [2]=4)

rsort:与sort相对,是从高到低的排序;

ksort:对数组按照键名排序,保留键名到数据的关联

例如:$data=array("US"=>"United  States", "EN"=>"England"); ksort($data); print_r($data);

输出结果: Array=("EN"=>"England", "US"=>"United States");

krsort:对数组按照键名逆向排序,保留键名到数据的关联

asort:对数组的值进行排序,与ksort相似,一个是按照键值,一个是按照元素值

arsort:与asort相逆。

natsort:自然排序,主要对字母字符串进行排序;

array_reverse:是natsort的逆方法,对自然语言进行倒排。

array_multisort():多维数组复杂排序,其原理是对当第一个关键字相同时,参照另个关键字进行排序。

php的多种sort的区别相关推荐

  1. 一文读懂H5,APP,WAP,公众号支付等多种支付方式的区别

    文章目录 线上和线下 线下支付场景分类 付款码支付 扫码支付 线上支付场景 APP支付 公众号支付 H5支付和手机WAP支付 小程序支付 网关支付 从事支付行业开发多年,做过很多不同的场景.发现各种支 ...

  2. jquery跟js初始化加载的多种方法及区别介绍

    jquery是等待页面加载完数据,以及页面部分元素:js是页面全部加载完成才执行初始化加载,具体示例祥看本文 jquery和js初始化加载页面的区别:  jquery:等待页面加载完数据,以及页面部分 ...

  3. Python sorted 和 sort() 的区别

    今天遇到了这两个有关于排序的函数,一个是 sorted() 一个是 sort() 一.特别说明以下3条: 1.sort() 函数只适用于列表排序,而 sorted() 函数适用于任意可以迭代的对象排序 ...

  4. 关于stable_sort()和sort()的区别:

    你发现有sort和stable_sort,还有 partition 和stable_partition, 感到奇怪吧.其中的区别是,带有stable的函数可保证相等元素的原本相对次序在排序后保持不变. ...

  5. java集合中中文排序_利用Collator和Collections.sort对list进行中文排序,注意与Arrays.sort的区别...

    //两者的关系:1.Coollections.sort的内部实现是用Arrays.sort来实现的. //2.如果要排序的list中的对象已经实现了Comparable接口,那么可以用Arrays.s ...

  6. php asort和sort的区别,PHP中sort、asort与ksort区别用法详解

    PHP中sort.asort与ksort对数组的排序方法异同点: sort只依据值从小到大排序,键值不参与排序 asort依据值排序,键值参与排序 ksort依据键值排序,值参与排序 sort只依据值 ...

  7. android中获取context的多种方法的区别(this,getbascontext(),getApplicationcontext())

    本文转自:http://www.eoeandroid.com/thread-171104-1-1.html 原文转自:http://stackoverflow.com/questions/102697 ...

  8. 【Hive】sort by、order by、 distribute by、 group by 、cluster by区别

    (1)order by是将所有数据放在一个reduce里面进行排序,当数据量大时,会出现内存溢出的问题,同时数据排序效率低. 另外,可以在sort by后面加上limit n来实现top n操作. ( ...

  9. waf和web应用防火墙的区别

    waf和web应用防火墙有什么区别?相信这两个词大家都不陌生,特别是做互联网行业的小伙伴们.对于waf和web应用防火墙,这两个名词的理解应该都很清楚.但是很多小伙伴们不知道WAF防火墙与Web防火墙 ...

最新文章

  1. Windows 8 Metro App学习笔记(九)—磁砖
  2. 基于ANN的6种调制信号自动调制识别(2ASK、4ASK、2FSK、4FSK、2PSK、4PSK)
  3. (转载)Linux下pthread_once()函数
  4. tomcat需要设置环境变量吗
  5. 不止一个人犯错,这种 Github 不要写在简历上!
  6. 抓取SAP报表ALV GRID上的数据
  7. 计算机浮点数运算误差与解决误差的算法
  8. 运行 java classnotfound_JAR运行出现ClassNotFoundException异常的解决办法
  9. PyTorch 1.0 中文文档:torch.Tensor
  10. redis 支持 json_Spring Boot 中集成 Redis
  11. navicat for mysql 数据传输_如何利用Navicat for MySQL数据库进行数据传输
  12. 华为手机怎么连接苹果电脑?
  13. 背阔肌(04):杠铃俯身划船
  14. 九龙证券|美国散户疯狂抄底,嗅到了什么?华尔街最新警告
  15. windows7怎么能不锁定计算机,怎么设置电脑不锁屏
  16. JAVA基础03-Object类,常用类,基本的数据结构, Collection常用体系,泛型-泛型通配符
  17. 读书 | 每天演好一个情绪稳定的成年人
  18. notepad++ 16进制数字加前缀0x
  19. Statistical Analysis of Network Data with R(第二版) 上机实操 3
  20. 个人博客建站教程wordpress+wdcp(小白入门首选)

热门文章

  1. RISC-V共建 | openKylin与深度数智战略合作会议召开
  2. FreeType 基本约定
  3. 美云智数PLM产品全生命周期管理系统,提供信息化落地解决方案
  4. 服务器100M带宽视频流媒体支持多少用户在线访问?(计算一下就知道了)
  5. 1G到5G之争:一部30年惊心动魄的移动通信史
  6. 【白板动画制作软件】万彩手影大师教程 | 调整整个动画时长
  7. 十进制与二进制的相互转换
  8. 【无标题】网络,keepalived
  9. Android版本历史(Android Version History)
  10. windows 声音编程之waveout