summaryrefslogtreecommitdiff
path: root/ext/standard/tests/array/array_multisort_basic1.phpt
blob: c317a1e025fb24831befb3dd6e72224e144efb33 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
--TEST--
Test array_multisort() function : basic functionality
--FILE--
<?php
/* Prototype  : bool array_multisort(array ar1 [, SORT_ASC|SORT_DESC [, SORT_REGULAR|SORT_NUMERIC|SORT_STRING|SORT_NATURAL|SORT_FLAG_CASE]] [, array ar2 [, SORT_ASC|SORT_DESC [, SORT_REGULAR|SORT_NUMERIC|SORT_STRING|SORT_NATURAL|SORT_FLAG_CASE]], ...])
 * Description: Sort multiple arrays at once similar to how ORDER BY clause works in SQL
 * Source code: ext/standard/array.c
 * Alias to functions:
 */

echo "*** Testing array_multisort() : basic functionality ***\n";

// Initialise all required variables
$ar1 = array("row1" => 2, "row2" => 1, "row3" => 1);
$ar2 = array("row1" => 2, "row2" => "aa", "row3" => "1");

echo "\n-- Testing array_multisort() function with all normal arguments --\n";
var_dump( array_multisort($ar1, SORT_ASC, SORT_REGULAR, $ar2, SORT_DESC, SORT_STRING) );
var_dump($ar1, $ar2);

echo "\n-- Testing array_multisort() function with one argument --\n";
var_dump( array_multisort($ar2) );
var_dump($ar2);


?>
===DONE===
--EXPECTF--
*** Testing array_multisort() : basic functionality ***

-- Testing array_multisort() function with all normal arguments --
bool(true)
array(3) {
  ["row2"]=>
  int(1)
  ["row3"]=>
  int(1)
  ["row1"]=>
  int(2)
}
array(3) {
  ["row2"]=>
  string(2) "aa"
  ["row3"]=>
  string(1) "1"
  ["row1"]=>
  int(2)
}

-- Testing array_multisort() function with one argument --
bool(true)
array(3) {
  ["row3"]=>
  string(1) "1"
  ["row2"]=>
  string(2) "aa"
  ["row1"]=>
  int(2)
}
===DONE===