常用PHP数组排序函数归纳


Posted in PHP onAugust 08, 2016

数组排序:数组中的元素能够以字母或数字顺序进行升序或降序排序。
常用的PHP数组排序函数
 •sort() - 以升序对数组排序
 •rsort() - 以降序对数组排序
 •asort() - 根据值,以升序对关联数组进行排序
 •ksort() - 根据键,以升序对关联数组进行排序
 •arsort() - 根据值,以降序对关联数组进行排序
 •krsort() - 根据键,以降序对关联数组进行排序 

举例:

sort()-以升序对数组排序

注释:本函数为数组中的单元赋予新的键名。原有的键名将被删除。
如果成功则返回true 失败返回 false
例如:

<?php
$arr1 = array('a', 'd', 'c', 'b');
$arr2 = array(1, 3, 2, 4);
print_r(sort($arr1) ? $arr1 : "排序失败");
echo "<br>";
print_r(sort($arr2) ? $arr2 : "排序失败");

运行结果为:
Array ( [0] => a [1] => b [2] => c [3] => d )
Array ( [0] => 1 [1] => 2 [2] => 3 [3] => 4 )

rsort()函数同理

asort()- 根据值,以升序对关联数组进行排序

asort() 函数对数组进行排序并保持索引关系。主要用于对那些单元顺序很重要的结合数组进行排序。
如果成功则返回 TRUE,否则返回 FALSE。

<?php
$arr1 = array('a', 'd', 'c', 'b');
$arr2 = array(1, 3, 2, 4);
print_r(asort($arr1) ? $arr1 : "排序失败");
echo "<br>";
print_r(asort($arr2) ? $arr2 : "排序失败");

运行结果为:
Array ( [0] => a [3] => b [2] => c [1] => d )
Array ( [0] => 1 [2] => 2 [1] => 3 [3] => 4 )

arsort()函数同理

ksort() - 根据键,以升序对关联数组进行排序

ksort() 函数按照键名对数组排序,为数组值保留原来的键。
若成功,则返回 TRUE,否则返回 FALSE。

<?php
$arr1 = array(
  '3' => '第三个',
  '2' => '第二个',
  '4' => '第四个',
  '1' => '第一个',
);
print_r(ksort($arr1) ? $arr1 : "排序失败");

运行结果为:
Array ( [1] => 第一个 [2] => 第二个 [3] => 第三个 [4] => 第四个 )

krsort()函数同理

补充—array_multisort() 函数

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

注释:字符串键名将被保留,但是数字键名将被重新索引,从 0 开始,并以 1 递增。

注释:您可以在每个数组后设置排序顺序和排序类型参数。如果没有设置,每个数组参数会使用默认值。

<?php
$a1=array("Dog","Dog","Cat");
$a2=array(3, 2, 5);
array_multisort($a1, SORT_ASC, $a2, SORT_DESC);
print_r($a1);
print_r($a2);

运行结果为:
Array ( [0] => Cat [1] => Dog [2] => Dog )
Array ( [0] => 5 [1] => 3 [2] => 2 )

常用PHP数组排序函数归纳

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
一些被忽视的PHP函数(简单整理)
Apr 30 PHP
CentOS 6.2使用yum安装LAMP以及phpMyadmin详解
Jun 17 PHP
php实现httpRequest的方法
Mar 13 PHP
php实现TCP端口检测的方法
Apr 01 PHP
PHP用反撇号执行外部命令
Apr 14 PHP
php封装的表单验证类完整实例
Oct 19 PHP
thinkphp Apache配置重启Apache1 restart 出错解决办法
Feb 15 PHP
phpmyadmin下载、安装、配置教程
May 16 PHP
PHP基于面向对象实现的留言本功能实例
Apr 04 PHP
php通过各种函数判断0和空
Jul 04 PHP
Thinkphp 3.2框架使用Redis的方法详解
Oct 24 PHP
PHP中国际化的字符串排序和比较对象详解
Aug 23 PHP
PHP 5.6.11 访问SQL Server2008R2的几种情况详解
Aug 08 #PHP
PHP 5.6.11中CURL模块问题的解决方法
Aug 08 #PHP
Yii2增删改查之查询 where参数详细介绍
Aug 08 #PHP
微信公众号开发之文本消息自动回复php代码
Aug 08 #PHP
微信公众号开发之语音消息识别php代码
Aug 08 #PHP
PHP+JQuery+Ajax实现分页方法详解
Aug 06 #PHP
微信自定义菜单的创建/查询/取消php示例代码
Aug 05 #PHP
You might like
php日历制作代码分享
2014/01/20 PHP
php实现根据字符串生成对应数组的方法
2014/09/22 PHP
php+Mysqli利用事务处理转账问题实例
2015/02/11 PHP
php一个解析字符串排列数组的方法
2015/05/12 PHP
PHP防止sql注入小技巧之sql预处理原理与实现方法分析
2019/12/13 PHP
对YUI扩展的Gird组件 Part-1
2007/03/10 Javascript
15 个 JavaScript Web UI 库
2010/05/19 Javascript
JSChart轻量级图形报表工具(内置函数中文参考)
2010/10/11 Javascript
原生JavaScript实现连连看游戏(附源码)
2013/11/05 Javascript
js弹出div并显示遮罩层
2014/02/12 Javascript
用jQuery toggleClass 实现鼠标移上变色
2014/05/14 Javascript
一个JavaScript处理textarea中的字符成每一行实例
2014/09/22 Javascript
一篇文章掌握RequireJS常用知识
2016/01/26 Javascript
jQuery实现日期联动效果实例
2016/07/26 Javascript
javascript实现的左右无缝滚动效果
2016/09/19 Javascript
微信和qq时间格式模板实例详解
2016/10/21 Javascript
使用BootStrap进行轮播图的制作
2017/01/06 Javascript
使用原生的javascript来实现轮播图
2017/02/24 Javascript
Vue的Class与Style绑定的方法
2017/09/01 Javascript
jquery实现手风琴案例
2020/05/04 jQuery
跟老齐学Python之坑爹的字符编码
2014/09/28 Python
Python基于DES算法加密解密实例
2015/06/03 Python
Python基本数据结构与用法详解【列表、元组、集合、字典】
2019/03/23 Python
解决Python pip 自动更新升级失败的问题
2020/02/21 Python
CSS3的RGBA中关于整数和百分比值的转换
2015/08/04 HTML / CSS
CSS3 :default伪类选择器使用简介
2018/03/15 HTML / CSS
HTML5中使用postMessage实现两个网页间传递数据
2016/06/22 HTML / CSS
教师党性分析材料
2014/02/04 职场文书
小学英语教师先进事迹
2014/05/28 职场文书
国庆促销活动总结
2014/08/29 职场文书
师德师风自我剖析材料
2014/09/27 职场文书
教师学习八项规定六项禁令思想汇报
2014/09/27 职场文书
党员个人剖析材料2014
2014/10/08 职场文书
2014年财政所工作总结
2014/11/22 职场文书
入团申请书格式
2019/06/20 职场文书
MySQL的InnoDB存储引擎的数据页结构详解
2022/03/03 MySQL