PHP 多维数组排序实现代码
维数组排序实现代码, ) - 对多个数组或多维数组进行排序 说明 , , .. [, ..]]] ) 如果成功则返回 败则返回 可以用来一次对多个数组进行排序,或者根据某一维或多维对多维数组进行排序。 关联(名保持不变,但数字键名会被重新索引。 输入数组被当成一个表的列并以行来排序――这类似于 Y 子句的功能。第一个数组是要排序的主要数组。数组中的行(值)比较为相同的话就按照下一个输入数组中相应值的大小来排序,依此类推。 本函数的参数结构有些不同寻常,但是非常灵活。第一个参数必须是一个数组。接下来的每个参数可以是数组或者是下面列出的排序标志。 排序顺序标志: 按照上升顺序排序 按照下降顺序排序 排序类型标志: 将项目按照通常方法比较 将项目按照数值比较 将项目按照字符串比较 每个数组之后不能指定两个同类的排序标志。每个数组后指定的排序标志仅对该数组有效 - 在此之前为默认值 例子 1. 对多个数组排序 复制代码代码如下: $ 10", 100, 100, "a"); $ , 3, "2", 1); $ ?> 本例中经过排序后,第一个数组将包含 "10","a",100,100。第二个数组将包含 1, 1,"2",3 。第二个数组中的项目顺序完全和第一个数组中相应的项目(100 和 100)顺序一致。 复制代码代码如下: ) { [0]=> ) "10" [1]=> ) "a" [2]=> 00) [3]=> 00) } ) { [0]=> ) [1]=> ) [2]=> ) "2" [3]=> ) } 例子 2. 对多维数组排序 复制代码代码如下: $ "10", 100, 100, "a"), 1, 3, "2", 1)); $], $], ?> 本例中经过排序后,第一个数组将包含 10,100,100,"a"(作为字符串上升排序) ,第二个数组将包含 1,3,"2" ,1 (作为数值下降排序) 。 例子 3. 制代码代码如下: $ 10", 11, 100, 100, "a"), 1, 2, "2", 3, 1) ); ], $], ?> 本例中在排序后,第一个数组将变成 "10",100,100,11 ,"a"(被当作字符串以升序排列) 。第二个数组将包含 1, 3, "2", 2, 1(被当作数字以降序排列) 。 复制代码代码如下: ) { [0]=> ) { [0]=> ) "10" [1]=> 00) [2]=> 00) [3]=> 1) [4]=> ) "a" } [1]=> ) { [0]=> ) [1]=> ) [2]=> ) "2" [3]=> ) [4]=> ) } } 例子 4. 对数据库结果进行排序 本例中 组中的每个单元表示一个表中的一行。这是典型的数据库记录的数据集合。 例子中的数据如下: 7 | 2 86 | 1 85 | 6 98 | 2 86 | 6 67 | 7 数据全都存放在名为 数组中。这通常是通过循环从数据库取得的结果,例如 。 复制代码代码如下: $ = => 67, '=> 2); $ = => 86, '=> 1); $ = => 85, '=> 6); $ = => 98, '=> 2); $ = => 86, '=> 6); $ = => 67, '=> 7); ?> 本例中将把 序排列,把 序排列。 现在有了包含有行的数组,但是 需要一个包含列的数组,因此用以下代码来取得列,然后排序。 复制代码代码如下: // 取得列的列表 $> ${ $= $; $= $; } // 将数据根据 序排列,根据 序排列 // 把 $为最后一个参数,以通用键排序 $$ ?> 数据集合现在排好序了,结果如下: 8 | 2 86 | 1 86 | 6 85 | 6 67 | 2 67 | 7 例子 5. 不区分大小写字母排序 是区分大小写字母的,大写字母会排在小写字母之前。 要进行不区分大小写的排序,就要按照原数组的小写字母拷贝来排序。 复制代码代码如下: $ ' ' '; $ $ $ ?> 上例将输出: [0] => 1] => 2] => 3] => 【译者注】本函数相当有用,为有助于理解,请再看下面这个例子: 例子 6. 名次排列 $ => 0, 95, 60, "70"), "=> "i", "u", " "i")); , ,由高到低排序 $, // 将名字作为字符串,由小到大排序 ?> 上例将输出: ) { ["=> ) { [0]=> 5) [1]=> ) "70" [2]=> 0) [3]=> 0) [4]=> 0) } ["=> ) { [0]=> ) "i" [1]=> ) "i" [2]=> ) "u" [3]=> ) "[4]=> ) "} } 本例中对包含成绩的数组 $照分数(由高到低进行排序,分数相同的人则按照名字(由小到大排序。排序后李四 95 分为第一名,赵六 60 分为第五名没有异议。张三、王五和刘七都是 70 分,他们的名次则由其姓名的字母顺序排列,前,后而 最后。为了区别,三个 70 分分别用了整数,浮点数和字符串来表示,可以在程序输出中清楚地看到它们排序的结果。 您可能感兴趣的文章:一个 维数组排序的函数分享 维数组排序方法(数组排序的简单实例 维数组排序详解 组排序函数合集 以及它们之间的联系分析 泡排序 二分查找 顺序查找 二维数组排序算法函数的详解 维数组排序与默认自然排序的方法介绍 的一些数组排序方法分享组排序)组排序 区别现 维数组排序示例讲解 于 维数组排序的使用说明 维数组排序(组排序方法总结 推荐收藏 用内置函数对数组排序的两个算法代码 单数组排序实现代码 效处理多维数组排序 数组排序代码分享 间 新浪微博 腾讯微博 搜狐微博 人人网 开心网 百度搜藏更多 维数组 排序 复制链接收藏本文打印本文关闭本文返回首页 上一篇:单数组排序实现代码 下一篇:限级分类,超级简单的无限级分类,支持输出树状图 相关文章 2014组合并 函数使用注意事项 2013定向的 3 种方式 2011片上传存储源码并且可以预览 2007动态显示签名和 理 2013注入,表单提交值转义的实现详解 2010使用小结 2012序算法 (冒泡排序,快速排序)2011块 别分析 2006配置 图文教程 2013析虚拟主机服务器 数被禁用的解决办法 文章评论 最 近 更 新 在 务器开启 未 数之 _ 用 现无刷新文件上传功能的代浅析 跨域实例 存技术的多种方法小结常见的 种设计模式小结让 即生效,不用刷新就可以使用 术开发技巧分享 制循环次数的实现详解 件上传类代码 热 点 排 行 数使用方法 面跳转到另一个页面的多种 符串截取问题置文件详解 (配置)火车头采集器 集图文教程 现 详细的 明安装教程 和 和(换使用与 ,,