PHP 简单数组排序实现代码


Posted in PHP onAugust 05, 2009

php 简单数组排序的方法,供大家学习参考。
PHP不知道如何去比较两个数组,需要建立一个比较它们的方法。

一、数字索引数组的初始化

$arr = array('100', '200', '300');

以上就代码就创建了一个数组,并且包含3个值。PHP数组的数字索引是从0开始的。所以$arr[0]的值为100。
可以用一个简单的 "="号把一个数组中的值复制到另一个数组中。
如果需要将按升序排列的数字保存到一个数组中,可以使用range()函数自动创建这个数组。

如以下代码将创建一个从1到10的数字数组:

$nums = range(1,10);

这个函数还有第三个参数,可以设定数字增长的步长。如: range(1,10,2)就是1到10之间的奇数。
PHP还支持相关数组,就是可以将变量值和关键字关联起来。如:

$arr = array('one'=>100, 'two'=>200, 'three'=>300);

二、数组排序

1、sort()函数:按数组值的字母或数字的升序排序。
sort()函数区分大小写,所有大写字母都在小写字母的前面。这个函数还有第二个参数,可以传递SORT_NUMERIC或SORT_STRING或SORT_REGULAR(默认值)。 指定排序功能是非常有用的,例如,当妖比较数字12和2时,从字符串来看,12要小于2,而从数字角度看正好相反。
2、asort()函数,ksort()函数:
如果使用了相关数组,在排序后还要保持关键字和值的排序仍然一致。就要用到这两个函数了。ksort就是按照key(关键字)来排序,asort就是value(按照值)来排序(都是升序)。
例如有数组:
$price = array('苹果'=5,'香蕉'=6,'荔枝'=7);
我们用ksort($price);排序后结果是:荔枝--7,苹果--5,香蕉--6
用asort($price);排序后的结果是:苹果--5,香蕉--6,荔枝--7
对应的这几个反相排序就是在sort前面加一个'r'。也就是rsort(),arsort(),krsort()

三、多维数组的排序

PHP知道如何比较两个数字或字符串,但多维数组的每个元素都是数组。
PHP不知道如何去比较两个数组,所以需要建立一个比较它们的方法。

PHP 相关文章推荐
php strcmp使用说明
Apr 22 PHP
PHP中创建空文件的代码[file_put_contents vs touch]
Jan 20 PHP
PHP中使用数组实现堆栈数据结构的代码
Feb 05 PHP
表格展示无限级分类(PHP版)
Aug 21 PHP
php建立Ftp连接的方法
Mar 07 PHP
PHP数组操作――获取数组最后一个值的方法
Apr 14 PHP
PHP加密解密实例分析
Dec 25 PHP
WordPress中获取所使用的模板的页面ID的简单方法
Dec 31 PHP
php错误日志简单配置方法
Jul 11 PHP
Docker配置PHP开发环境教程
Dec 21 PHP
php连接MSsql server的五种方法总结
Mar 04 PHP
tp5.1框架数据库子查询操作实例分析
May 26 PHP
用php获取本周,上周,本月,上月,本季度日期的代码
Aug 05 #PHP
一些 PHP 管理系统程序中的后门
Aug 05 #PHP
黑夜路人出的几道php笔试题
Aug 04 #PHP
谈谈新手如何学习PHP 默默经典版本
Aug 04 #PHP
用PHP的ob_start() 控制您的浏览器cache
Aug 03 #PHP
一贴学会PHP 新手入门教程
Aug 03 #PHP
php 获得汉字拼音首字母的函数
Aug 01 #PHP
You might like
PHPMailer使用教程(PHPMailer发送邮件实例分析)
2012/12/06 PHP
php插件Xajax使用方法详解
2017/08/31 PHP
如何直接访问php实例对象中的private属性详解
2017/10/12 PHP
解决PHP使用CURL发送GET请求时传递参数的问题
2019/10/11 PHP
CL vs ForZe BO5 第五场 2.13
2021/03/10 DOTA
为jQuery增加join方法的实现代码
2010/11/28 Javascript
深入理解JavaScript系列(16) 闭包(Closures)
2012/04/12 Javascript
js格式化时间小结
2014/11/03 Javascript
Jquery 自定义事件实现发布/订阅的简单实例
2016/06/12 Javascript
jquery 获取select数组与name数组长度的实现代码
2016/06/20 Javascript
使用jQuery调用XML实现无刷新即时聊天
2016/08/07 Javascript
微信小程序 使用picker封装省市区三级联动实例代码
2016/10/28 Javascript
jQuery中on方法使用注意事项详解
2017/02/15 Javascript
js 单引号替换成双引号,双引号替换成单引号的实现方法
2017/02/16 Javascript
AngularJS+bootstrap实现动态选择商品功能示例
2017/05/17 Javascript
JS获取并处理php数组的方法实例分析
2018/09/04 Javascript
NodeJs生成sitemap站点地图的方法示例
2019/06/11 NodeJs
vue router 传参获取不到的解决方式
2019/11/13 Javascript
JS插件amCharts实现绘制柱形图默认显示数值功能示例
2019/11/26 Javascript
[01:07:17]EG vs Optic Supermajor 败者组 BO3 第一场 6.6
2018/06/07 DOTA
Django中URL视图函数的一些高级概念介绍
2015/07/20 Python
Python每天必学之bytes字节
2016/01/28 Python
Python按行读取文件的简单实现方法
2016/06/22 Python
python中np是做什么的
2020/07/21 Python
Python3如何实现Win10桌面自动切换
2020/08/11 Python
python tkinter的消息框模块(messagebox,simpledialog)
2020/11/07 Python
python 实现图片裁剪小工具
2021/02/02 Python
中学生打架检讨书
2014/02/10 职场文书
音乐节策划方案
2014/06/09 职场文书
幼儿园门卫岗位职责范本
2014/07/02 职场文书
金融管理专业求职信
2014/07/10 职场文书
一份教室追逐打闹的检讨书
2014/09/27 职场文书
向国旗敬礼学生寄语大全
2014/09/30 职场文书
大学三好学生主要事迹范文
2015/11/03 职场文书
2016年小学圣诞节活动总结
2016/03/31 职场文书
基于python定位棋子位置及识别棋子颜色
2021/07/26 Python