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.MVC的模板标签系统(四)
Sep 05 PHP
在线竞拍系统的PHP实现框架(一)
Oct 09 PHP
简单PHP上传图片、删除图片实现代码
May 12 PHP
《PHP编程最快明白》第二讲 数字、浮点、布尔型、字符串和数组
Nov 01 PHP
php中判断数组相等的方法以及数组运算符介绍
Mar 30 PHP
PHP实现适用于自定义的验证码类
Jun 15 PHP
支付宝支付开发――当面付条码支付和扫码支付实例
Nov 04 PHP
什么是PHP文件?如何打开PHP文件?
Jun 27 PHP
ThinkPHP中获取指定日期后工作日的具体日期方法
Oct 14 PHP
laravel使用数据库测试注意事项
Apr 10 PHP
PHP过滤器 filter_has_var() 函数用法实例分析
Apr 23 PHP
ThinkPHP5框架中使用JWT的方法示例
Jun 03 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
缓存技术详谈―php
2006/12/14 PHP
PHP使用imagick读取PDF生成png缩略图的两种方法
2014/03/20 PHP
PHP实现批量清空删除指定文件夹所有内容的方法
2017/05/30 PHP
PHP新特性详解之命名空间、性状与生成器
2017/07/18 PHP
使用XHProf查找PHP性能瓶颈的实例
2017/12/13 PHP
显示、隐藏密码
2006/07/01 Javascript
JS中字符问题(二进制/十进制/十六进制及ASCII码之间的转换)
2008/11/03 Javascript
node.js中使用node-schedule实现定时任务实例
2014/06/03 Javascript
JavaScript页面模板库handlebars的简单用法
2015/03/02 Javascript
JavaScript实现的多种鼠标拖放效果
2015/11/03 Javascript
三种带箭头提示框总结实例
2016/06/14 Javascript
深入理解bootstrap框架之第二章整体架构
2016/10/09 Javascript
Three.js基础部分学习
2017/01/08 Javascript
JavaScript实现选项卡效果的分析及步骤
2019/04/16 Javascript
javascript单张多张图无缝滚动实例代码
2020/05/10 Javascript
Javascript表单序列化原理及实现代码详解
2020/10/30 Javascript
[44:40]2018DOTA2亚洲邀请赛3月30日 小组赛A组Liquid VS OG
2018/03/31 DOTA
在Python中使用第三方模块的教程
2015/04/27 Python
go和python变量赋值遇到的一个问题
2017/08/31 Python
Python如何使用turtle库绘制图形
2020/02/26 Python
Pytorch高阶OP操作where,gather原理
2020/04/30 Python
css3 pointer-events 介绍详解
2017/09/18 HTML / CSS
canvas实现烟花的示例代码
2020/01/16 HTML / CSS
美国经典刺绣和字母儿童服装特卖:Smocked Auctions
2018/07/16 全球购物
英智兴达软件测试笔试题
2016/10/12 面试题
新闻专业应届生求职信
2013/10/31 职场文书
设备售后服务承诺书
2014/05/30 职场文书
中药学专业求职信
2014/05/31 职场文书
政府采购方案
2014/06/12 职场文书
建筑安全生产责任书
2014/07/22 职场文书
2014国庆节国旗下演讲稿(精选版)
2014/09/26 职场文书
企业安全生产检查制度
2015/08/06 职场文书
2016三八妇女节校园广播稿
2015/12/17 职场文书
python glom模块的使用简介
2021/04/13 Python
分享一个vue实现的记事本功能案例
2022/04/11 Vue.js
Tomcat执行startup.bat出现闪退的原因及解决办法
2022/04/20 Servers