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数据入库前清理 注意php intval与mysql的int取值范围不同
Dec 12 PHP
php中实现记住密码自动登录的代码
Mar 02 PHP
php数组函数序列之array_slice() - 在数组中根据条件取出一段值,并返回
Nov 07 PHP
PHP对MongoDB[NoSQL]数据库的操作
Mar 01 PHP
php中is_null,empty,isset,unset 的区别详细介绍
Apr 28 PHP
利用PHP+JS实现搜索自动提示(实例)
Jun 09 PHP
基于linnux+phantomjs实现生成图片格式的网页快照
Apr 15 PHP
常用的php图片处理类(水印、等比缩放、固定高宽)分享
Jun 19 PHP
php加密之discuz内容经典加密方式实例详解
Feb 04 PHP
详解php框架Yaf路由重写
Jun 20 PHP
php制作圆形用户头像的实例_自定义封装类源代码
Sep 18 PHP
vmware linux系统安装最新的php7图解
Apr 14 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 cURL获取微信公众号access_token的实例
2018/04/28 PHP
js 变量类型转换常用函数与代码[比较全]
2009/12/01 Javascript
ASP.NET jQuery 实例18 通过使用jQuery validation插件校验DropDownList
2012/02/03 Javascript
jQuery使用toggleClass方法动态添加删除Class样式的方法
2015/03/26 Javascript
JavaScript 模块化编程(笔记)
2015/04/08 Javascript
简单实现异步编程promise模式
2015/07/31 Javascript
JavaScript实现身份证验证代码
2016/02/17 Javascript
JavaScript中setTimeout和setInterval函数的传参及调用
2016/03/11 Javascript
JavaScript数据绑定实现一个简单的 MVVM 库
2016/04/08 Javascript
使用jQuery Ajax 请求webservice来实现更简练的Ajax
2016/08/04 Javascript
基于vue开发的在线付费课程应用过程
2018/01/25 Javascript
简单说说angular.json文件的使用
2018/10/29 Javascript
vue-router启用history模式下的开发及非根目录部署方法
2018/12/23 Javascript
浅谈nuxtjs校验登录中间件和混入(mixin)
2020/11/06 Javascript
[01:01:01]完美世界DOTA2联赛循环赛 GXR vs FTD BO2第一场 10.29
2020/10/29 DOTA
python文件特定行插入和替换实例详解
2017/07/12 Python
使用python为mysql实现restful接口
2018/01/05 Python
python json.loads兼容单引号数据的方法
2018/12/19 Python
Python字符串内置函数功能与用法总结
2019/04/16 Python
python写日志文件操作类与应用示例
2019/07/01 Python
浅谈pytorch grad_fn以及权重梯度不更新的问题
2019/08/20 Python
使用卷积神经网络(CNN)做人脸识别的示例代码
2020/03/27 Python
python为什么会环境变量设置不成功
2020/06/23 Python
解析Tensorflow之MNIST的使用
2020/06/30 Python
python实现一个简单RPC框架的示例
2020/10/28 Python
Nike挪威官网:Nike.com (NO)
2018/11/26 全球购物
高中同学聚会邀请函
2014/01/11 职场文书
个人自我评价和职业目标
2014/01/24 职场文书
装修设计师求职信
2014/02/26 职场文书
党员民主评议自我评价
2014/10/20 职场文书
优秀工作者事迹材料
2014/12/26 职场文书
婚前保证书范文
2015/02/28 职场文书
运动员代表致辞
2015/07/29 职场文书
农村房屋租赁合同(范本)
2019/07/23 职场文书
Mysql案例刨析事务隔离级别
2021/09/25 MySQL
Win11自动黑屏怎么办 Win11自动黑屏设置教程
2022/07/15 数码科技