常用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 相关文章推荐
MySQL数据库转移,access,sql server 转 MySQL 的图文教程
Sep 02 PHP
PHP中用header图片地址 简单隐藏图片源地址
Apr 09 PHP
PHP无敌近乎加密方式!
Jul 17 PHP
php自定义函数之递归删除文件及目录
Aug 08 PHP
PHP setcookie设置Cookie用法(及设置无效的问题)
Jul 13 PHP
浅析Apache中RewriteCond规则参数的详细介绍
Jun 30 PHP
30个php操作redis常用方法代码例子
Jul 05 PHP
php中多维数组按指定value排序的实现代码
Aug 19 PHP
php中最简单的字符串匹配算法
Dec 16 PHP
YII框架中搜索分页jQuery写法详解
Dec 19 PHP
Yii 2.0中场景的使用教程
Jun 02 PHP
PHP正则删除HTML代码中宽高样式的方法
Jun 12 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
探讨:如何通过stats命令分析Memcached的内部状态
2013/06/14 PHP
php中函数前加&amp;符号的作用分解
2014/07/08 PHP
php实现约瑟夫问题的方法小结
2015/03/23 PHP
PHP 网站修改默认访问文件的nginx配置
2017/05/27 PHP
PDO::beginTransaction讲解
2019/01/27 PHP
有关PHP 中 config.m4 的探索
2020/08/26 PHP
不用写JS也能使用EXTJS视频演示
2008/12/29 Javascript
jQuery 1.7.2中getAll方法的疑惑分析
2012/05/23 Javascript
css配合jquery美化 select
2013/11/29 Javascript
JS、DOM和JQuery之间的关系示例分析
2014/04/09 Javascript
jquery map方法使用示例
2014/04/23 Javascript
jQuery操作元素css样式的三种方法
2014/06/04 Javascript
nodejs实现HTTPS发起POST请求
2015/04/23 NodeJs
javascript中undefined与null的区别
2015/08/16 Javascript
js实现时间轴自动排列效果
2017/03/09 Javascript
Express + Node.js实现登录拦截器的实例代码
2017/07/01 Javascript
vue.js国际化 vue-i18n插件的使用详解
2017/07/07 Javascript
vue2单元测试环境搭建
2018/05/24 Javascript
微信小程序日历弹窗选择器代码实例
2019/05/09 Javascript
js通过canvas生成图片缩略图
2020/10/02 Javascript
vue-cli4.0多环境配置变量与模式详解
2020/12/30 Vue.js
[29:23]2014 DOTA2国际邀请赛中国区预选赛 LGD-GAMING VS CIS 第一场1
2014/05/23 DOTA
Python获取Windows或Linux主机名称通用函数分享
2014/11/22 Python
简单讲解Python中的闭包
2015/08/11 Python
python+tkinter编写电脑桌面放大镜程序实例代码
2018/01/16 Python
手把手教你用python抢票回家过年(代码简单)
2018/01/21 Python
kafka-python批量发送数据的实例
2018/12/27 Python
python制作简单五子棋游戏
2019/06/18 Python
python线程信号量semaphore使用解析
2019/11/30 Python
Keras设定GPU使用内存大小方式(Tensorflow backend)
2020/05/22 Python
HTML5 canvas实现移动端上传头像拖拽裁剪效果
2016/03/14 HTML / CSS
探索欧洲最好的品牌:Bombinate
2019/06/14 全球购物
客户代表自我评价范例
2013/09/24 职场文书
建筑院校毕业生求职信
2014/06/13 职场文书
导游词之广东佛山(南风古灶)
2019/09/24 职场文书
Python可视化神器pyecharts之绘制箱形图
2022/07/07 Python