|
2 | 2 | Test arsort() function : usage variations - sort strings
|
3 | 3 | --FILE--
|
4 | 4 | <?php
|
5 |
| -/* |
6 |
| - * testing arsort() by providing different string arrays for $array argument with following flag values |
7 |
| - * flag value as default |
8 |
| - * SORT_REGULAR - compare items normally |
9 |
| - * SORT_STRING - compare items as strings |
10 |
| -*/ |
11 | 5 |
|
12 |
| -echo "*** Testing arsort() : usage variations ***\n"; |
| 6 | +$array = [ |
| 7 | + "lemoN" => "lemoN", |
| 8 | + "Orange" => "Orange", |
| 9 | + "banana" => "banana", |
| 10 | + "apple" => "apple", |
| 11 | + "Test" => "Test", |
| 12 | + "TTTT" => "TTTT", |
| 13 | + "ttt" => "ttt", |
| 14 | + "ww" => "ww", |
| 15 | + "x" => "x", |
| 16 | + "X" => "X", |
| 17 | + "oraNGe" => "oraNGe", |
| 18 | + "BANANA" => "BANANA", |
| 19 | +]; |
13 | 20 |
|
14 |
| -$various_arrays = array ( |
15 |
| - // group of escape sequences |
16 |
| - array ("null"=> null, "NULL" => NULL, "\a" => "\a", "\cx" => "\cx", "\e" => "\e", |
17 |
| - "\f" => "\f", "\n" =>"\n", "\r" => "\r", "\t" => "\t", "\xhh" => "\xhh", |
18 |
| - "\ddd" => "\ddd", "\v" => "\v" |
19 |
| - ), |
| 21 | +echo "Default flag\n"; |
| 22 | +$temp_array = $array; |
| 23 | +var_dump(arsort($temp_array)); // expecting : bool(true) |
| 24 | +var_dump($temp_array); |
20 | 25 |
|
21 |
| - // array contains combination of capital/small letters |
22 |
| - array ('l' => "lemoN", 'O' => "Orange", 'b' => "banana", 'a' => "apple", 'Te' => "Test", |
23 |
| - 'T' => "TTTT", 't' => "ttt", 'w' => "ww", 'x' => "x", 'X' => "X", 'o' => "oraNGe", |
24 |
| - 'B' => "BANANA" |
25 |
| - ) |
26 |
| -); |
| 26 | +echo "SORT_REGULAR\n"; |
| 27 | +$temp_array = $array; |
| 28 | +var_dump(arsort($temp_array, SORT_REGULAR)); // expecting : bool(true) |
| 29 | +var_dump($temp_array); |
27 | 30 |
|
28 |
| -$flags = array("SORT_REGULAR" => SORT_REGULAR, "SORT_STRING" => SORT_STRING); |
| 31 | +echo "SORT_STRING\n"; |
| 32 | +$temp_array = $array; |
| 33 | +var_dump(arsort($temp_array, SORT_STRING)); // expecting : bool(true) |
| 34 | +var_dump($temp_array); |
29 | 35 |
|
30 |
| -$count = 1; |
31 |
| -echo "\n-- Testing arsort() by supplying various string arrays --\n"; |
32 |
| - |
33 |
| -// loop through to test arsort() with different arrays |
34 |
| -foreach ($various_arrays as $array) { |
35 |
| - echo "\n-- Iteration $count --\n"; |
36 |
| - |
37 |
| - echo "- With default sort_flag -\n"; |
38 |
| - $temp_array = $array; |
39 |
| - var_dump(arsort($temp_array) ); // expecting : bool(true) |
40 |
| - var_dump($temp_array); |
41 |
| - |
42 |
| - // loop through $flags array and setting all possible flag values |
43 |
| - foreach($flags as $key => $flag){ |
44 |
| - echo "- Sort_flag = $key -\n"; |
45 |
| - $temp_array = $array; |
46 |
| - var_dump(arsort($temp_array, $flag) ); // expecting : bool(true) |
47 |
| - var_dump($temp_array); |
48 |
| - } |
49 |
| - $count++; |
50 |
| -} |
51 |
| - |
52 |
| -echo "Done\n"; |
53 | 36 | ?>
|
54 | 37 | --EXPECT--
|
55 |
| -*** Testing arsort() : usage variations *** |
56 |
| - |
57 |
| --- Testing arsort() by supplying various string arrays -- |
58 |
| - |
59 |
| --- Iteration 1 -- |
60 |
| -- With default sort_flag - |
61 |
| -bool(true) |
62 |
| -array(12) { |
63 |
| - ["\xhh"]=> |
64 |
| - string(4) "\xhh" |
65 |
| - ["\ddd"]=> |
66 |
| - string(4) "\ddd" |
67 |
| - ["\cx"]=> |
68 |
| - string(3) "\cx" |
69 |
| - ["\a"]=> |
70 |
| - string(2) "\a" |
71 |
| - [""]=> |
72 |
| - string(1) "" |
73 |
| - [""]=> |
74 |
| - string(1) "" |
75 |
| - [""]=> |
76 |
| - string(1) "" |
77 |
| - [""]=> |
78 |
| - string(1) "" |
79 |
| - [" |
80 |
| -"]=> |
81 |
| - string(1) " |
82 |
| -" |
83 |
| - [" "]=> |
84 |
| - string(1) " " |
85 |
| - ["null"]=> |
86 |
| - NULL |
87 |
| - ["NULL"]=> |
88 |
| - NULL |
89 |
| -} |
90 |
| -- Sort_flag = SORT_REGULAR - |
91 |
| -bool(true) |
92 |
| -array(12) { |
93 |
| - ["\xhh"]=> |
94 |
| - string(4) "\xhh" |
95 |
| - ["\ddd"]=> |
96 |
| - string(4) "\ddd" |
97 |
| - ["\cx"]=> |
98 |
| - string(3) "\cx" |
99 |
| - ["\a"]=> |
100 |
| - string(2) "\a" |
101 |
| - [""]=> |
102 |
| - string(1) "" |
103 |
| - [""]=> |
104 |
| - string(1) "" |
105 |
| - [""]=> |
106 |
| - string(1) "" |
107 |
| - [""]=> |
108 |
| - string(1) "" |
109 |
| - [" |
110 |
| -"]=> |
111 |
| - string(1) " |
112 |
| -" |
113 |
| - [" "]=> |
114 |
| - string(1) " " |
115 |
| - ["null"]=> |
116 |
| - NULL |
117 |
| - ["NULL"]=> |
118 |
| - NULL |
119 |
| -} |
120 |
| -- Sort_flag = SORT_STRING - |
121 |
| -bool(true) |
122 |
| -array(12) { |
123 |
| - ["\xhh"]=> |
124 |
| - string(4) "\xhh" |
125 |
| - ["\ddd"]=> |
126 |
| - string(4) "\ddd" |
127 |
| - ["\cx"]=> |
128 |
| - string(3) "\cx" |
129 |
| - ["\a"]=> |
130 |
| - string(2) "\a" |
131 |
| - [""]=> |
132 |
| - string(1) "" |
133 |
| - [""]=> |
134 |
| - string(1) "" |
135 |
| - [""]=> |
136 |
| - string(1) "" |
137 |
| - [""]=> |
138 |
| - string(1) "" |
139 |
| - [" |
140 |
| -"]=> |
141 |
| - string(1) " |
142 |
| -" |
143 |
| - [" "]=> |
144 |
| - string(1) " " |
145 |
| - ["null"]=> |
146 |
| - NULL |
147 |
| - ["NULL"]=> |
148 |
| - NULL |
149 |
| -} |
150 |
| - |
151 |
| --- Iteration 2 -- |
152 |
| -- With default sort_flag - |
| 38 | +Default flag |
153 | 39 | bool(true)
|
154 | 40 | array(12) {
|
155 | 41 | ["x"]=>
|
156 | 42 | string(1) "x"
|
157 |
| - ["w"]=> |
| 43 | + ["ww"]=> |
158 | 44 | string(2) "ww"
|
159 |
| - ["t"]=> |
| 45 | + ["ttt"]=> |
160 | 46 | string(3) "ttt"
|
161 |
| - ["o"]=> |
| 47 | + ["oraNGe"]=> |
162 | 48 | string(6) "oraNGe"
|
163 |
| - ["l"]=> |
| 49 | + ["lemoN"]=> |
164 | 50 | string(5) "lemoN"
|
165 |
| - ["b"]=> |
| 51 | + ["banana"]=> |
166 | 52 | string(6) "banana"
|
167 |
| - ["a"]=> |
| 53 | + ["apple"]=> |
168 | 54 | string(5) "apple"
|
169 | 55 | ["X"]=>
|
170 | 56 | string(1) "X"
|
171 |
| - ["Te"]=> |
| 57 | + ["Test"]=> |
172 | 58 | string(4) "Test"
|
173 |
| - ["T"]=> |
| 59 | + ["TTTT"]=> |
174 | 60 | string(4) "TTTT"
|
175 |
| - ["O"]=> |
| 61 | + ["Orange"]=> |
176 | 62 | string(6) "Orange"
|
177 |
| - ["B"]=> |
| 63 | + ["BANANA"]=> |
178 | 64 | string(6) "BANANA"
|
179 | 65 | }
|
180 |
| -- Sort_flag = SORT_REGULAR - |
| 66 | +SORT_REGULAR |
181 | 67 | bool(true)
|
182 | 68 | array(12) {
|
183 | 69 | ["x"]=>
|
184 | 70 | string(1) "x"
|
185 |
| - ["w"]=> |
| 71 | + ["ww"]=> |
186 | 72 | string(2) "ww"
|
187 |
| - ["t"]=> |
| 73 | + ["ttt"]=> |
188 | 74 | string(3) "ttt"
|
189 |
| - ["o"]=> |
| 75 | + ["oraNGe"]=> |
190 | 76 | string(6) "oraNGe"
|
191 |
| - ["l"]=> |
| 77 | + ["lemoN"]=> |
192 | 78 | string(5) "lemoN"
|
193 |
| - ["b"]=> |
| 79 | + ["banana"]=> |
194 | 80 | string(6) "banana"
|
195 |
| - ["a"]=> |
| 81 | + ["apple"]=> |
196 | 82 | string(5) "apple"
|
197 | 83 | ["X"]=>
|
198 | 84 | string(1) "X"
|
199 |
| - ["Te"]=> |
| 85 | + ["Test"]=> |
200 | 86 | string(4) "Test"
|
201 |
| - ["T"]=> |
| 87 | + ["TTTT"]=> |
202 | 88 | string(4) "TTTT"
|
203 |
| - ["O"]=> |
| 89 | + ["Orange"]=> |
204 | 90 | string(6) "Orange"
|
205 |
| - ["B"]=> |
| 91 | + ["BANANA"]=> |
206 | 92 | string(6) "BANANA"
|
207 | 93 | }
|
208 |
| -- Sort_flag = SORT_STRING - |
| 94 | +SORT_STRING |
209 | 95 | bool(true)
|
210 | 96 | array(12) {
|
211 | 97 | ["x"]=>
|
212 | 98 | string(1) "x"
|
213 |
| - ["w"]=> |
| 99 | + ["ww"]=> |
214 | 100 | string(2) "ww"
|
215 |
| - ["t"]=> |
| 101 | + ["ttt"]=> |
216 | 102 | string(3) "ttt"
|
217 |
| - ["o"]=> |
| 103 | + ["oraNGe"]=> |
218 | 104 | string(6) "oraNGe"
|
219 |
| - ["l"]=> |
| 105 | + ["lemoN"]=> |
220 | 106 | string(5) "lemoN"
|
221 |
| - ["b"]=> |
| 107 | + ["banana"]=> |
222 | 108 | string(6) "banana"
|
223 |
| - ["a"]=> |
| 109 | + ["apple"]=> |
224 | 110 | string(5) "apple"
|
225 | 111 | ["X"]=>
|
226 | 112 | string(1) "X"
|
227 |
| - ["Te"]=> |
| 113 | + ["Test"]=> |
228 | 114 | string(4) "Test"
|
229 |
| - ["T"]=> |
| 115 | + ["TTTT"]=> |
230 | 116 | string(4) "TTTT"
|
231 |
| - ["O"]=> |
| 117 | + ["Orange"]=> |
232 | 118 | string(6) "Orange"
|
233 |
| - ["B"]=> |
| 119 | + ["BANANA"]=> |
234 | 120 | string(6) "BANANA"
|
235 | 121 | }
|
236 |
| -Done |
0 commit comments