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上传文件时文件过大$_FILES为空的解决方法
Nov 26 PHP
CodeIgniter框架URL路由总结
Sep 03 PHP
QQ互联一键登录审核不通过的解决方案
Sep 10 PHP
PHP中使用addslashes函数转义的安全性原理分析
Nov 03 PHP
php中的观察者模式简单实例
Jan 20 PHP
smarty模板引擎中自定义函数的方法
Jan 22 PHP
ThinkPHP提示错误Fatal error: Allowed memory size的解决方法
Feb 12 PHP
Codeigniter发送邮件的方法
Mar 19 PHP
php实现连接access数据库并转txt写入的方法
Feb 08 PHP
php中实现字符串翻转的方法
Feb 22 PHP
Lumen timezone 时区设置方法(慢了8个小时)
Jan 20 PHP
laravel 框架结合关联查询 when()用法分析
Nov 22 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
excellent!――ASCII Art(由目标图象生成ascii)
2007/02/20 PHP
PHP实现数据分页显示的简单实例
2016/05/26 PHP
Yii实现复选框批量操作实例代码
2017/03/15 PHP
php微信开发之图片回复功能
2018/06/14 PHP
PHP实现的解汉诺塔问题算法示例
2018/08/06 PHP
PHP实现统计代码行数小工具
2019/09/19 PHP
php 多进程编程父进程的阻塞与非阻塞实例分析
2020/02/22 PHP
ThinkPHP5 框架引入 Go AOP,PHP AOP编程项目详解
2020/05/12 PHP
无语,javascript居然支持中文(unicode)编程!
2007/04/12 Javascript
javascript xml为数据源的下拉框控件
2009/07/07 Javascript
JavaScript实现快速排序(自已编写)
2012/12/19 Javascript
jQuery中的ready函数与window.onload谁先执行
2016/06/21 Javascript
浅谈js中子页面父页面方法 变量相互调用
2016/08/04 Javascript
Bootstrap Tree View简单而优雅的树结构组件实例解析
2017/06/15 Javascript
vue-router history模式下的微信分享小结
2018/07/05 Javascript
vue+iview 兼容IE11浏览器的实现方法
2019/01/07 Javascript
JS匿名函数内部this指向问题详析
2019/05/10 Javascript
JS 实现发送短信验证码的“59秒后重新发送验证短信”功能
2019/08/23 Javascript
JS定时器如何实现提交成功提示功能
2020/06/12 Javascript
使用Python的urllib2模块处理url和图片的技巧两则
2016/02/18 Python
Python3 hashlib密码散列算法原理详解
2020/03/30 Python
详解Selenium-webdriver绕开反爬虫机制的4种方法
2020/10/28 Python
data:image data url 文件转为Blob上传后端的方法
2019/07/16 HTML / CSS
英国精品买手店:Browns Fashion
2016/09/29 全球购物
美国专营婴幼儿用品的购物网站:buybuy BABY
2017/01/01 全球购物
英国和爱尔兰的自炊式豪华度假小屋:Rural Retreats
2018/06/08 全球购物
大学生演讲稿范文
2014/01/11 职场文书
顶撞领导检讨书
2014/01/29 职场文书
2014年迎新年联欢会活动策划方案
2014/02/26 职场文书
2014组织生活会方案
2014/05/19 职场文书
德育标兵事迹材料
2014/08/24 职场文书
党员学习群众路线教育实践活动对照检查材料
2014/09/23 职场文书
商铺租房协议书范本
2014/12/04 职场文书
2015年节能减排工作总结
2015/05/14 职场文书
Win11 PC上的Outlook搜索错误怎么办?
2022/07/15 数码科技
box-shadow单边阴影的实现
2023/05/21 HTML / CSS