PHP ʖ²ἯTH
º/A
usort
˵÷
=ד 1. usort() =ד
function cmp ($a, $b) {if ($a == $b) return 0; return ($a $b)? -1: 1;} $a = array (3, 2, 5, 6, 1); usort ($a, "cmp"); while (list ($key, $value) = each ($a)) {echo "$key: $value\n";}
±¾=½«ϔʾ£º
0: 6 1: 5 2: 3 3: 2 4: 1
=ד 2. ʹӃ¶άʽשµĠusort() =ד
function cmp ($a, $b) {return strcmp($a["fruit"], $b["fruit"]);} $fruits[0]["fruit"] = "lemons"; $fruits[1]["fruit"] = "apples"; $fruits[2]["fruit"] = "grapes"; usort($fruits, "cmp"); while (list ($key, $value) = each ($fruits)) {echo "\$fruits[$key]: ". $value["fruit"]. "\n";}
±¾=½«ϔʾ£º
$fruits[0]: apples $fruits[1]: grapes $fruits[2]: lemons
=ד 3. ʹӃ¶ԏɔ±º¯ʽµĠ usort() =ד
class TestObj {var $name; function TestObj($name) {$this- name = $name;} /* This is the static comparing function: */ function cmp_obj($a, $b) {$al = strtolower($a- name); $bl = strtolower($b- name); if ($al == $bl) return 0; return ($al $bl)? +1: -1;}} $a[] = new TestObj("c"); $a[] = new TestObj("b"); $a[] = new TestObj("d"); uasort($a, array ("TestObj", "cmp_obj")); foreach ($a as $item) {print $item- name."\n";}
b c d
º/A
ưµ㼯A
uksort
ɏһ¼¶
Aspell functions [deprecated]