常用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 win下Socket方式发邮件类
Aug 21 PHP
PHP自动识别字符集并完成转码详解
Aug 02 PHP
浅析ThinkPHP中的pathinfo模式和URL重写
Jan 06 PHP
PHP基于GD库的缩略图生成代码(支持jpg,gif,png格式)
Jun 19 PHP
QQ互联一键登录审核不通过的解决方案
Sep 10 PHP
php序列化函数serialize() 和 unserialize() 与原生函数对比
May 08 PHP
[原创]php常用字符串输出方法分析(echo,print,printf及sprintf)
Jul 09 PHP
Zend Framework数据库操作方法实例总结
Dec 11 PHP
动态表单验证的操作方法和TP框架里面的ajax表单验证
Jul 19 PHP
PHPUnit + Laravel单元测试常用技能
Nov 06 PHP
laravel框架使用FormRequest进行表单验证,验证异常返回JSON操作示例
Feb 18 PHP
PHP判断是否是json字符串
Apr 01 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中删除变量时unset()和null的区别分析
2011/01/27 PHP
.htaccess文件保护实例讲解
2011/02/06 PHP
隐藏Nginx或Apache以及PHP的版本号的方法
2016/01/03 PHP
PHP面向对象多态性实现方法简单示例
2017/09/27 PHP
PHP asXML()函数讲解
2019/02/03 PHP
javascript一点特殊用法
2008/05/28 Javascript
jQuery getJSON 处理json数据的代码
2010/07/26 Javascript
Extjs中的GridPanel隐藏列会显示在menuDisabled中解决方法
2013/01/27 Javascript
JavaScript的继承的封装介绍
2013/10/15 Javascript
Javascript实现带关闭按钮的网页漂浮广告代码
2014/01/12 Javascript
javascript ajax的5种状态介绍
2014/08/18 Javascript
Spring Boot+AngularJS+BootStrap实现进度条示例代码
2017/03/02 Javascript
jQuery实现ajax回调函数带入参数的方法示例
2018/06/26 jQuery
vue移动端监听滚动条高度的实现方法
2018/09/03 Javascript
在Vant的基础上封装下拉日期控件的代码示例
2018/12/05 Javascript
js设计模式之单例模式原理与用法详解
2019/08/15 Javascript
vue+AI智能机器人回复功能实现
2020/07/16 Javascript
JavaScript代码简化技巧实例解析
2020/09/09 Javascript
详解js创建对象的几种方式和对象方法
2021/03/01 Javascript
python实现定时播放mp3
2015/03/29 Python
Python爬虫之正则表达式基本用法实例分析
2018/08/08 Python
python 运用Django 开发后台接口的实例
2018/12/11 Python
Python 保存矩阵为Excel的实现方法
2019/01/28 Python
Python面向对象之继承和多态用法分析
2019/06/08 Python
python 寻找离散序列极值点的方法
2019/07/10 Python
python 修改本地网络配置的方法
2019/08/14 Python
面向对象学习之pygame坦克大战
2019/09/11 Python
爬虫代理的cookie如何生成运行
2020/09/22 Python
matplotlib交互式数据光标实现(mplcursors)
2021/01/13 Python
PyCharm2020.3.2安装超详细教程
2021/02/08 Python
Python  Asyncio模块实现的生产消费者模型的方法
2021/03/01 Python
澳大利亚潮流尖端的快时尚品牌:Cotton On
2016/09/26 全球购物
欧洲第一中国智能手机和平板电脑网上商店:CECT-SHOP
2018/01/08 全球购物
Hudson Jeans官网:高级精制牛仔裤
2018/11/28 全球购物
运动会广播稿200米(5篇)
2014/10/15 职场文书
工作会议简报
2015/07/20 职场文书