1--TEST--
2Test rsort() function : basic functionality
3--FILE--
4<?php
5/* Prototype  : bool rsort(array &$array_arg [, int $sort_flags])
6 * Description: Sort an array in reverse order
7 * Source code: ext/standard/array.c
8 */
9
10/*
11 * Test basic functionality of rsort()
12 */
13
14echo "*** Testing rsort() : basic functionality ***\n";
15
16// associative array containing unsorted string values
17$unsorted_strings =   array( "l" => "lemon", "o" => "orange", "b" => "banana" );
18
19// array with default keys containing unsorted numeric values
20$unsorted_numerics =  array( 100, 33, 555, 22 );
21
22echo "\n-- Testing rsort() by supplying string array, 'flag' value is defualt --\n";
23$temp_array = $unsorted_strings;
24var_dump( rsort($temp_array) );
25var_dump( $temp_array);
26
27echo "\n-- Testing rsort() by supplying numeric array, 'flag' value is defualt --\n";
28$temp_array = $unsorted_numerics;
29var_dump( rsort($temp_array) );
30var_dump( $temp_array);
31
32echo "\n-- Testing rsort() by supplying string array, 'flag' = SORT_REGULAR --\n";
33$temp_array = $unsorted_strings;
34var_dump( rsort($temp_array, SORT_REGULAR) );
35var_dump( $temp_array);
36
37echo "\n-- Testing rsort() by supplying numeric array, 'flag' = SORT_REGULAR --\n";
38$temp_array = $unsorted_numerics;
39var_dump( rsort($temp_array, SORT_REGULAR) );
40var_dump( $temp_array);
41
42echo "\n-- Testing rsort() by supplying string array, 'flag' = SORT_STRING --\n";
43$temp_array = $unsorted_strings;
44var_dump( rsort($temp_array, SORT_STRING) );
45var_dump( $temp_array);
46
47echo "\n-- Testing rsort() by supplying numeric array, 'flag' = SORT_NUMERIC --\n";
48$temp_array = $unsorted_numerics;
49var_dump( rsort($temp_array, SORT_NUMERIC) );
50var_dump( $temp_array);
51
52echo "Done";
53?>
54
55--EXPECTF--
56*** Testing rsort() : basic functionality ***
57
58-- Testing rsort() by supplying string array, 'flag' value is defualt --
59bool(true)
60array(3) {
61  [0]=>
62  string(6) "orange"
63  [1]=>
64  string(5) "lemon"
65  [2]=>
66  string(6) "banana"
67}
68
69-- Testing rsort() by supplying numeric array, 'flag' value is defualt --
70bool(true)
71array(4) {
72  [0]=>
73  int(555)
74  [1]=>
75  int(100)
76  [2]=>
77  int(33)
78  [3]=>
79  int(22)
80}
81
82-- Testing rsort() by supplying string array, 'flag' = SORT_REGULAR --
83bool(true)
84array(3) {
85  [0]=>
86  string(6) "orange"
87  [1]=>
88  string(5) "lemon"
89  [2]=>
90  string(6) "banana"
91}
92
93-- Testing rsort() by supplying numeric array, 'flag' = SORT_REGULAR --
94bool(true)
95array(4) {
96  [0]=>
97  int(555)
98  [1]=>
99  int(100)
100  [2]=>
101  int(33)
102  [3]=>
103  int(22)
104}
105
106-- Testing rsort() by supplying string array, 'flag' = SORT_STRING --
107bool(true)
108array(3) {
109  [0]=>
110  string(6) "orange"
111  [1]=>
112  string(5) "lemon"
113  [2]=>
114  string(6) "banana"
115}
116
117-- Testing rsort() by supplying numeric array, 'flag' = SORT_NUMERIC --
118bool(true)
119array(4) {
120  [0]=>
121  int(555)
122  [1]=>
123  int(100)
124  [2]=>
125  int(33)
126  [3]=>
127  int(22)
128}
129Done