本文内容:PHP二维数组排序,PHP数组排序总结。
php数组排序是PHP学习中最基础也是最重要的一部分。
1、常规数组的排序
常规数组是指数组各元素均为字符串或数字,这与这样的数组,我们可以采用sort()函数对他进行排序。
示例:
<?php  
$people=array('name','sex','nation','birth');  
echo "---原数组---<br />";  
foreach ($people as $mychrs)  
    echo $mychrs." ";  
sort($people);  
echo "<br />---sort()函数排序后---<br />";  
foreach ($people as $mychrs)  
    echo $mychrs." ";  
?>  
输出:
---原数组---
name sex nation birth
---sort()函数排序后---
birth name nation sex
Sort()函数还具有第二参数,用来说明升序的规则是用来比较数字还是字符串的。
示例:
<?php  
echo "---按数字升序排序---<br />";  
$num2=array('30','5',);  
sort($num2,SORT_NUMERIC);  
foreach ($num2 as $mychrs)  
    echo $mychrs." ";  
echo "<br />---按字符升序排序---<br />";  
$num3=array('30','5');  
sort($num3,SORT_STRING);  
foreach ($num3 as $mychrs)  
    echo $mychrs." ";  
?>  
输出:
---按数字升序排序---
5 30
---按字符升序排序---
30 5
这里关键就是SORT_NUMERIC和SORT_STRING参数的使用
sort()函数是对数组做升序排列,同样还有降序排列函数rsort(),他的使用方法与sort()函数一样,这里就不在说了。
2、数组倒序排序
也就是说把原数组倒序存放,这里我们用到array_reverse()函数。
示例:
<?php  
$ut=array('uncletoo','php','mysql','oracle');  
echo "--原数组--<br />";  
foreach ($ut as $mychrs)  
echo $mychrs." ";  
$ut=array_reverse($ut);  
echo "<br />--array_reverse倒序--<br />";  
foreach ($ut as $mychrs)  
echo $mychrs." ";  
?>  
输出:
--原数组--
uncletoo php mysql oracle
--array_reverse倒序--
oracle mysql php uncletoo
3、数组随机排序
PHP中使用shuffle()函数将数组元素进行随机的重新排序
示例
<?php  
$ut=array('uncletoo','php','mysql','oracle');  
shuffle($ut);  
foreach ($ut as $mychrs)  
echo $mychrs." ";  
?>  
刷新浏览器,每次输出的排序都不一样。
4、有键值数组的排序
对于常规数组我们用sort()和rsort()函数进行排序,那么如果数组中有键值,我们就要用其他函数了。先看示例:
<?php  
$peoples=array('name'=>'张三','sex'=>'男','age'=>'15','site'=>'www.jbxue.com');  
echo "--原数组--<br />";  
foreach ($peoples as $mychrs)  
    echo $mychrs." ";  
echo "<br />--按元素值升序排列--<br />";  
asort($peoples);  
foreach ($peoples as $mychrs)  
    echo $mychrs." ";  
echo "<br />--按关键字升序排列--<br />";  
ksort($peoples);  
foreach ($peoples as $mychrs)  
    echo $mychrs." ";  
?>  
输出:
--原数组--
张三 男 15 www.jbxue.com
--按元素值升序排列--
15 www.jbxue.com 男 张三
--按关键字升序排列--
15 张三 男 www.jbxue.com
这里,用到了asort()和ksort()函数,分别是对元素和键值做升序排列,对应的,他们的降序排列分别是arsort()和krsort()函数,他们的用法是一样的。
以上简单介绍了PHP数组的几种排序函数及其用法。

分享:PHP数组排序总结的更多相关文章

  1. 关于java的arrays数组排序示例AJPFX的分享

    Java API对Arrays类的说明是:此类包含用来操作数组(比如排序和搜索)的各种方法. 1.对基本数据类型的数组的排序 说明: (1)Arrays类中的sort()使用的是“经过调优的快速排序法 ...

  2. ***PHP 数组排序 +php二维数组排序方法(PHP比较器)

    PHP - 一维数组的排序函数 在本节中,我们将学习如下 PHP 数组排序函数: sort() - 以升序对数组排序 rsort() - 以降序对数组排序 asort() - 根据值,以升序对关联数组 ...

  3. php二维数组排序的处理

    一维数组排序可以使用asort.ksort等一些方法进程排序,相对来说比较简单.二维数组的排序怎么实现呢?使用array_multisort和usort可以实现 例如像下面的数组:    代码如下: ...

  4. php二维数组排序方法(转自http://www.3lian.com/edu/2013/12-26/118882.html)

    一维数组排序可以使用asort.ksort等一些方法进程排序,相对来说比较简单.二维数组的排序怎么实现呢?使用array_multisort和usort可以实现 例如像下面的数组:    代码如下: ...

  5. php对数组排序的例子

    分享一个php数组排序的例子,介绍了和php,有关的知识.技巧.经验,和一些php源码等. <?php class='pingjiaF' frameborder='0' src='http:// ...

  6. php对数组排序代码

    php对数组排序,介绍了和php,有关的知识.技巧.经验,和一些php源码等. 对数组排序 usort() 函数使用用户自定义的函数对数组排序. */ function cmp($a, $b) //用 ...

  7. PHP中数组排序实例学习

    先介绍下php中用于数组排序的函数: 排序方法                           升序                             降序                 ...

  8. 常用的php数组排序函数

    分享几个php数组排序函数,每个函数出去sort是排序的意思前缀字母的含义分别代表: a 索引 k 数组键 r 逆向 u 用户自定义 顺序排序函数 sort — 对数组排序  ksort — 对数组按 ...

  9. 代码分享:php判断数组是否有序

    发布:脚本学堂/PHP编程  编辑:JB02   2013-12-17 14:59:02  [大 中 小] 转自:http://www.jbxue.com/article/14723.html如何判断 ...

随机推荐

  1. mysql前n条查询

    可以利用——LIMIT——来完成这项功能. LIMIT可以实现top N查询,也可以实现M至N(某一段)的记录查询,具体语法如下: SELECT * FROM MYTABLE ORDER BY AFI ...

  2. leetcode题解:Search in Rotated Sorted Array(旋转排序数组查找)

    题目: Suppose a sorted array is rotated at some pivot unknown to you beforehand. (i.e., 0 1 2 4 5 6 7  ...

  3. UITabBarItem编写的时候出现得图片显示异常,和有一些比较忽略的方法总结

    我现在学到可分栏控制器,UITabBarController.我总结了它的层次有,UITabBarController控制并且只有以个UITanBat(他是一个UIIView的子类),UITabBar ...

  4. IOS之代理

    作者:王泽豪 时间:2016年4月22日         ★代理是一种设计模式,它的价值在于通过一个统一的模式,解决一个原本并不方便.甚至是几乎不可能解决的问题.         ★代理有两个关注点: ...

  5. MySQL优化之COUNT(*)效率

    MySQL优化之COUNT(*)效率 刚给一个朋友解决他写的Discuz!插件的问题,说到MySQL的COUNT(*)的效率,发现越说越说不清楚,干脆写下来,分享给大家. COUNT(*)与COUNT ...

  6. 跨越跳板机传文件nc

    从线上服务器与本机互传文件 传输方 nc -l 10000 < a.tar 接收方 nc xx.xx.xx.xx 10000 >a.tar 原理: 文件传输方运行nc,指定端口,设置监听文 ...

  7. 发布后500访问错误 —— dll引用错误

    System.Net.Http相关dll

  8. Html5新标签及用法

    HTML 5 是一个新的网络标准,目标在于取代现有的 HTML 4.01, XHTML 1.0 and DOM Level 2  HTML 标准.它希望能够减少浏览器对于需要插件的丰富性网络应用服务( ...

  9. 一步步搭建自己的轻量级MVCphp框架-(二)一个国产轻量级框架Amysql源码分析(1)

    这个框架是我一个做PHP的朋友“祥子”介绍给我的,Git地址https://coding.net/u/srar/p/AMP/git 下面从入口文件 总线程 ( index.php )开始进行分析 &l ...

  10. 【php基础】XML,DTD实例

    要求一:能看懂别人写的DTD文件,自己能写更好.例如products.dtd: <!ENTITY AUTHOR "John Doe"> <!ENTITY COMP ...