分享一个php数组排序的例子,介绍了和php,有关的知识、技巧、经验,和一些php源码等。

  1. <?php
  2. class='pingjiaF' frameborder='0' src='http://www.jbxue.com/pingjia.php?id=335100' scrolling='no'>
  3. 对数组排序
  4. usort() 函数使用用户自定义的函数对数组排序。
  5. */
  6. function cmp($a, $b) //用户自定义回调函数
  7. {
  8. if($a==$b) //如果两个参数相等
  9. {
  10. return 0; //返回0
  11. }
  12. return($a>$b)?-1:1; //如果第1个参数大于第2个返回1,否则-1
  13. }
  14. $a=array(3,2,5,6,1); //定义一个数组
  15. usort ($a,"cmp"); //使用自定义函数对数组排序
  16. foreach($a as $key=>$value) //循环输出排序后的键值对
  17. {
  18. echo "$key:$valuen";
  19. }
  20. /*
  21. 注释:如果两个元素比较结果相同,则它们在排序后的数组中的顺序未经定义。到 php 4.0.6 之前,用户自定义函数将保留这些元素的原有顺序。但是由于在 4.1.0 中引进了新的排序算法,结果将不是这样了,因为对此没有一个有效的解决方案。
  22. */
  23. //对数组键名排序 uksort(array,sorttype)
  24. function cmp($a, $b) //用户自定义回调函数
  25. {
  26. if($a==$b) //如果两个参数相等
  27. {
  28. return 0; //返回0
  29. }
  30. return($a>$b)?-1:1; //如果第1个参数大于第2个返回1,否则-1
  31. }
  32. $a=array(4=>"four",3 =>"three",20 =>"twenty",10=>"ten"); //定义一个数组
  33. uksort ($a,"cmp"); //使用自定义函数对数组键名排序
  34. foreach($a as $key=>$value) //循环输出排序后的键值对
  35. { // www.jbxue.com
  36. echo "$key:$valuen";
  37. }/*
  38. uksort() 函数使用用户自定义的比较函数按照键名对数组排序,并保持索引关系。
  39. 如果成功则返回 true,否则返回 false。
  40. 如果要排序的数组需要用一种不寻常的标准进行排序,那么应该使用此函数。
  41. 自定义函数应接受两个参数,该参数将被数组中的一对键名填充。比较函数在第一个参数小于,等于,或大于第二个参数时必须分别返回一个小于零,等于零,或大于零的整数。
  42. */
  43. /*
  44. sort() 函数按升序对给定数组的值排序。
  45. 注释:本函数为数组中的单元赋予新的键名。原有的键名将被删除。
  46. 如果成功则返回 true,否则返回 false。
  47. */
  48. $fruits=array("lemon","orange","banana","apple"); //定义一个数组
  49. sort($fruits); //对数组进行排序
  50. foreach($fruits as $key=>$val) //循环输出数组排序后的键值对
  51. {
  52. echo "$key=$valn"; //输出键值对
  53. }

php对数组排序的例子的更多相关文章

  1. php对数组排序代码

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

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

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

  3. js原型链闭包作用域链-Tom

    1.原型相当于Java.C++里面的父类,由封装公有属性及方法而产生,子类可以继承. 原型继承实现(函数的原型属性指向原型函数一个实例对象,函数的原型的构造函数指向函数本身) 1)eg:原型链 fun ...

  4. 代码分享:php对二维数组进行排序

    发布:net/PHP编程  编辑:thebaby   2013-06-28 13:12:54  [大 中 小] 转自:http://www.jbxue.com/article/9991.html本文介 ...

  5. js中的数组Array定义与sort方法使用示例

    Array的定义及sort方法使用示例 Array数组相当于java中的ArrayList  定义方法:  1:使用new Array(5  )创建数组 var ary = new Array(5): ...

  6. Java开发笔记(二十三)数组工具Arrays

    数组作为一种组合形式的数据类型,必然要求提供一些处理数组的简便办法,包括数组比较.数组复制.数组排序等等.为此Java专门设计了Arrays工具,该工具包含了几个常用方法,方便程序员对数组进行加工操作 ...

  7. JavaScript内部原理实践——真的懂JavaScript吗?(转)

    通过翻译了Dmitry A.Soshnikov的关于ECMAScript-262-3 JavaScript内部原理的文章, 从理论角度对JavaScript中部分特性的内部工作机制有了一定的了解. 但 ...

  8. Swift语言精要-闭包(Closure)

    闭包(Closure)这个概念如果没学过Swift的人应该也不会陌生. 学过Javascript的朋友应该知道,在Javascript中我们经常会讨论闭包,很多前端工程师的面试题也会问到什么是闭包. ...

  9. 闭包(Closures)

    本文转自:http://goddyzhao.tumblr.com/post/11311499651/closures 翻译自:http://dmitrysoshnikov.com/ 概要 本文将介绍一 ...

随机推荐

  1. Python 描述符(descriptor) 杂记

    转自:https://blog.tonyseek.com/post/notes-about-python-descriptor/ Python 引入的“描述符”(descriptor)语法特性真的很黄 ...

  2. C# 中将多个空格替换成一个空格

    2013-04-17 15:36 C# 中如何将多个空格替换成一个空格? 1 myString = Regex.Replace(myString, @"\s+", " & ...

  3. poj 2406 Power Strings kmp算法

    点击打开链接 Power Strings Time Limit: 3000MS   Memory Limit: 65536K Total Submissions: 27368   Accepted:  ...

  4. cocso2d-x改变精灵图片

    cocos2d-x 改变精灵图片的2种方法. 1. // 首先载入贴图集 CCSpriteBatchNode *spriteBatch=CCSpriteBatchNode::batchNodeWith ...

  5. sqoop安装

    环境:Hadoop 2.3.0 sqoop 1.4.5 1.下载并解压sqoop-1.4.6.bin__hadoop-2.0.4-alpha.tar.gz (解压完,名字会很长,可以根据需要自己修改下 ...

  6. ASP.NET MVC开发微信(二)

  7. android界面布局技巧(一)

    (1)//得到手机的宽高 Display display = getWindowManager().getDefaultDisplay(); int screenWidth = display.get ...

  8. 【测试】使用hr用户下的employees表写一条SQL语句,执行计划走索引全扫描

    SQL> select count(*) from employees; COUNT(*) ---------- Execution Plan ------------------------- ...

  9. USACO Section 3.2 香甜的黄油 Sweet Butter

    本题是多源最短路问题 但使用弗洛伊德算法会超时 而因为边数目比较少 所以用队列优化后的迪杰斯特拉算法可以通过 #include<iostream> #include<cstring& ...

  10. 生成Excel直接以流或字节形式发给客户端,无需在服务生成一个实体文件。

    public ActionResult ExportAgentBooking(string Company_Id, string Company_Name)//Altman.Web.BCDAdmin. ...