首页 / PHP / php数组排序各种方法总结_PHP教程
php数组排序各种方法总结_PHP教程
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了php数组排序各种方法总结_PHP教程,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含3931字,纯文字阅读大概需要6分钟。
内容图文
![php数组排序各种方法总结_PHP教程](/upload/InfoBanner/zyjiaocheng/179/e54509b8bb684653b657fc6ca2a823a6.jpg)
数组排序最常用的函数就是 sort($arr); 它的作用是按数组的键值升序排列,并且排序后的数组键名不再是原来的键名,是按新数组来重新设置的键名。
而有时我们要求更复杂的排序。如按键名排序,这里用到 ksort($arr); 函数,它会根据数组的键名排序,并维持原有的键值关系。相对应的 asort($arr); 函数,是按键值排序,且维持原有的键值关系。
同样原理,rsort(); arsort(); krsort(); 函数除了排序是按降序排列外,其它与sort(); rsort(); ksort(); 相同。
数组操作是PHP很重要的基础,希望能好好运用。
按键值排序
即按标识符ASCⅡ码值的大小排列顺序。
ksort(): 按照数组标识符顺序排列
krsort(): 按照数组标识符逆序排
实例1:
代码如下 | |
$languages=array( |
按元素值排序
asort(): 按照由小到大的顺序对数组排序;
rsort(): 按照由大到小的顺序对数组逆序排序。
将实例1的8-11行代码改为:
代码如下 | |
asort($languages); |
删除原有键名排序
sort(): 按照由小到大的顺序对数组排序;
rsort(): 按照由大到小的顺序对数组逆序排序。
将实例2的8-11行代码改为:
代码如下 | |
sort($languages); |
array_multisort -- 对多个数组或多维数组进行排序
说明
bool array_multisort ( array ar1 [, mixed arg [, mixed ... [, array ...]]] )
例子 1. 对多个数组排序
代码如下 | |
$ar1 = array("10", 100, 100, "a"); var_dump($ar1); |
本例中经过排序后,第一个数组将包含 "10","a",100,100。第二个数组将包含 1,1,"2",3。第二个数组中的项目顺序完全和第一个数组中相应的项目(100 和 100)顺序一致。
代码如下 | |
array(4) { |
例子 2. 对多维数组排序
代码如下 | |
$ar = array (array ("10", 100, 100, "a"), array (1, 3, "2", 1));
|
本例中经过排序后,第一个数组将包含 10,100,100,"a"(作为字符串上升排序),第二个数组将包含 1,3,"2",1(作为数值下降排序)。
PHP数组排序函数很多,也很强大
如:arsort,asort,krsort,ksort,sort…
但有时候还是满足不了我们的需求
假如有一个二维数组,我们要按二维数组中的一个值来排序
就需要用到了usort自定义数组排序
例子如下:
代码如下 | |
$aa = array (array ("score"=>60), array ("score"=>70), array ("score"=>80), array ("score"=>90), array ("score"=>20), array ("score"=>10), array ("score"=>50), array ("score"=>30)); echo '------排序前输出------ '; var_dump($aa); // 排序前输出 usort($aa, "cmp"); // 排序处理(从大到小) echo ' ------排序后输出------ '; var_dump($aa); // 排序完输出 /** * 自定义排序条件 * @param array $a * @param array $b * @return bool */ function cmp($a, $b) { if ($a["score"] == $b["score"]) { return 0; } return ($a["score"] < $b["score"]) ? 1 : -1; } ?> |
输出结果:
代码如下 | |
------排序前输出------ |
http://www.bkjia.com/PHPjc/631541.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/631541.htmlTechArticle在php中数组排序函数有很多很多(rsort,sort,asort,rsort,krsort,ksort,array_multisort),下面我来给各位朋友总结我们常用到的一些数组排序函数与用户...
内容总结
以上是互联网集市为您收集整理的php数组排序各种方法总结_PHP教程全部内容,希望文章能够帮你解决php数组排序各种方法总结_PHP教程所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。