【问题标题】:PHP usort UnderstandingPHP usort 理解
【发布时间】:2014-11-19 07:21:58
【问题描述】:
function cmp_function($a, $b)

{

if ($a == $b) return 0;
  return ($a > $b) ? -1 : 1;

}

$fruits = array("d"=>"lemon", "a"=>"orange", "b"=>"banana" );

usort($fruits, "cmp_function");

问题:cmp_fucntion() 的 $a 和 $b 参数将传递什么值?

【问题讨论】:

  • “如果一切都失败了,请阅读 f* 手册”。
  • @MarcinOrlowski 公平地说,手册中没有解释。
  • @khanz 这个comment in the manual 可能会有所帮助。
  • 您可以随时编写一点测试代码并自己找出答案:) 3v4l.org/YoG81

标签: php usort


【解决方案1】:

$a 将是此时两个比较的第一个元素,而$b 将是排序算法此时的第二个比较元素。

例如:

 iteration |     $a   |    $b
 -------------------------------
      1      "lemon"  |   "orange"
      2      "orange" |   "banana"
      3      "banana" |   "lemon"
           ...

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-06-10
    • 1970-01-01
    • 1970-01-01
    • 2018-08-30
    • 2016-01-01
    • 2012-03-18
    • 2012-02-14
    • 1970-01-01
    相关资源
    最近更新 更多