常用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中截取字符串支持utf-8
Jan 18 PHP
Base64在线编码解码实现代码 演示与下载
Jan 08 PHP
一个基于PDO的数据库操作类(新) 一个PDO事务实例
Jul 03 PHP
PHP数组循环操作详细介绍 附实例代码
Feb 03 PHP
Thinkphp关闭缓存的方法
Jun 26 PHP
微信公众平台开发之天气预报功能
Aug 31 PHP
Codeigniter控制器controller继承问题实例分析
Jan 19 PHP
laravel中的错误与日志用法详解
Jul 26 PHP
php基于单例模式封装mysql类完整实例
Oct 18 PHP
PHP实现在数据库百万条数据中随机获取20条记录的方法
Apr 19 PHP
购物车实现的几种方式优缺点对比
May 02 PHP
PHP设计模式(六)桥连模式Bridge实例详解【结构型】
May 02 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分页类代码
2013/04/02 PHP
Yii实现自动加载类地图的方法
2015/04/01 PHP
php 问卷调查结果统计
2015/10/08 PHP
PHP实现简单的计算器
2020/08/28 PHP
通过js脚本复制网页上的一个表格的不错实现方法
2006/12/29 Javascript
php上传图片并给图片打上透明水印的代码
2010/06/07 Javascript
用js闭包的方法实现多点标注冒泡示例
2014/05/29 Javascript
node.js中的http.response.writeHead方法使用说明
2014/12/14 Javascript
使用JavaScript 实现的人脸检测
2015/03/24 Javascript
jQuery地图map悬停显示省市代码分享
2015/08/20 Javascript
Bootstrap的图片轮播示例代码
2015/08/31 Javascript
JavaScript对象封装的简单实现方法(3种方法)
2017/01/03 Javascript
Node.js数据库操作之连接MySQL数据库(一)
2017/03/04 Javascript
微信小程序中使用javascript 回调函数
2017/05/11 Javascript
vue2.0父子组件间传递数据的方法
2018/08/16 Javascript
vue使用混入定义全局变量、函数、筛选器的实例代码
2019/07/29 Javascript
vue总线机制(bus)知识点详解
2020/05/10 Javascript
pyinstaller打包单个exe后无法执行错误的解决方法
2019/06/21 Python
Python3的高阶函数map,reduce,filter的示例详解
2019/07/23 Python
Python封装成可带参数的EXE安装包实例
2019/08/24 Python
django-rest-swagger对API接口注释的方法
2019/08/29 Python
python操作gitlab API过程解析
2019/12/27 Python
CSS3 开发工具收集
2010/04/17 HTML / CSS
css 元素选择器的简单实例
2016/05/23 HTML / CSS
阿根廷网上配眼镜:SmartBuyGlasses阿根廷
2016/08/19 全球购物
优秀士兵个人事迹材料
2014/01/19 职场文书
给水工程专业毕业生自荐信
2014/01/28 职场文书
给国外客户的邀请函
2014/01/30 职场文书
计算机应届毕业生自荐信范文
2014/02/23 职场文书
幼儿园六一儿童节文艺汇演主持词
2014/03/21 职场文书
2014年银行工作总结范文
2014/11/12 职场文书
2015年初三班主任工作总结
2015/05/21 职场文书
2019年入党思想汇报
2019/03/25 职场文书
Windows10下安装MySQL8
2021/04/06 MySQL
详解Python 3.10 中的新功能和变化
2021/04/28 Python
基于Python实现射击小游戏的制作
2022/04/06 Python