remove array_multisort and convert array_multisortN to use inout
[hiphop-php.git] / hphp / test / zend / good / ext / standard / tests / array / usort_variation9.php
blob742e8603a961fcb7292b15d5753c0a9d7f1e9585
1 <?hh
2 /* Prototype : bool usort(&array $array_arg, string $cmp_function)
3 * Description: Sort an array by values using a user-defined comparison function
4 * Source code: ext/standard/array.c
5 */
7 /*
8 * Pass an array of referenced variables as $array_arg to test behaviour
9 */
11 function cmp_function($value1, $value2)
13 if($value1 == $value2) {
14 return 0;
16 else if($value1 > $value2) {
17 return 1;
19 else {
20 return -1;
23 <<__EntryPoint>> function main(): void {
24 echo "*** Testing usort() : usage variation ***\n";
26 // different variables which are used as elements of $array_arg
27 $value1 = -5;
28 $value2 = 100;
29 $value3 = 0;
32 $array_arg = array(
33 0 => 10,
34 1 => $value1,
35 2 => $value2,
36 3 => 200,
37 4 => $value3,
40 echo "\n-- Sorting \$array_arg containing different references --\n";
41 var_dump( usort(&$array_arg, fun('cmp_function')) );
42 var_dump($array_arg);
43 echo "===DONE===\n";