Annotation of embedaddon/php/ext/standard/tests/array/rsort_variation3.phpt, revision 1.1.1.1
1.1 misho 1: --TEST--
2: Test rsort() function : usage variations - numeric values
3: --SKIPIF--
4: <?php
5: if (PHP_INT_SIZE != 4) die("skip this test is for 32bit platform only");
6: ?>
7: --FILE--
8: <?php
9: /* Prototype : bool rsort(array &$array_arg [, int $sort_flags])
10: * Description: Sort an array in reverse order
11: * Source code: ext/standard/array.c
12: */
13:
14: /*
15: * Pass arrays containing different numeric data to rsort() to test behaviour
16: */
17:
18: echo "*** Testing rsort() : variation ***\n";
19:
20: // group of various arrays
21:
22: $various_arrays = array (
23: // negative/positive integers array
24: array(11, -11, 21, -21, 31, -31, 0, 41, -41),
25:
26: // float value array
27: array(10.5, -10.5, 10.5e2, 10.6E-2, .5, .01, -.1),
28:
29: // mixed value array
30: array(.0001, .0021, -.01, -1, 0, .09, 2, -.9, 10.6E-2, -10.6E-2, 33),
31:
32: // array values contains minimum and maximum ranges
33: array(2147483647, 2147483648, -2147483647, -2147483648, -0, 0, -2147483649)
34: );
35:
36: // set of possible flag values
37: $flag_value = array("SORT_REGULAR" => SORT_REGULAR, "SORT_NUMERIC" => SORT_NUMERIC);
38:
39: $count = 1;
40:
41: // loop through to test rsort() with different arrays
42: foreach ($various_arrays as $array) {
43: echo "\n-- Iteration $count --\n";
44:
45: echo "- With Defualt sort flag -\n";
46: $temp_array = $array;
47: var_dump(rsort($temp_array) );
48: var_dump($temp_array);
49:
50: // loop through $flag_value array and setting all possible flag values
51: foreach($flag_value as $key => $flag){
52: echo "- Sort flag = $key -\n";
53: $temp_array = $array;
54: var_dump(rsort($temp_array, $flag) );
55: var_dump($temp_array);
56: }
57: $count++;
58: }
59:
60: echo "Done";
61: ?>
62:
63: --EXPECTF--
64: *** Testing rsort() : variation ***
65:
66: -- Iteration 1 --
67: - With Defualt sort flag -
68: bool(true)
69: array(9) {
70: [0]=>
71: int(41)
72: [1]=>
73: int(31)
74: [2]=>
75: int(21)
76: [3]=>
77: int(11)
78: [4]=>
79: int(0)
80: [5]=>
81: int(-11)
82: [6]=>
83: int(-21)
84: [7]=>
85: int(-31)
86: [8]=>
87: int(-41)
88: }
89: - Sort flag = SORT_REGULAR -
90: bool(true)
91: array(9) {
92: [0]=>
93: int(41)
94: [1]=>
95: int(31)
96: [2]=>
97: int(21)
98: [3]=>
99: int(11)
100: [4]=>
101: int(0)
102: [5]=>
103: int(-11)
104: [6]=>
105: int(-21)
106: [7]=>
107: int(-31)
108: [8]=>
109: int(-41)
110: }
111: - Sort flag = SORT_NUMERIC -
112: bool(true)
113: array(9) {
114: [0]=>
115: int(41)
116: [1]=>
117: int(31)
118: [2]=>
119: int(21)
120: [3]=>
121: int(11)
122: [4]=>
123: int(0)
124: [5]=>
125: int(-11)
126: [6]=>
127: int(-21)
128: [7]=>
129: int(-31)
130: [8]=>
131: int(-41)
132: }
133:
134: -- Iteration 2 --
135: - With Defualt sort flag -
136: bool(true)
137: array(7) {
138: [0]=>
139: float(1050)
140: [1]=>
141: float(10.5)
142: [2]=>
143: float(0.5)
144: [3]=>
145: float(0.106)
146: [4]=>
147: float(0.01)
148: [5]=>
149: float(-0.1)
150: [6]=>
151: float(-10.5)
152: }
153: - Sort flag = SORT_REGULAR -
154: bool(true)
155: array(7) {
156: [0]=>
157: float(1050)
158: [1]=>
159: float(10.5)
160: [2]=>
161: float(0.5)
162: [3]=>
163: float(0.106)
164: [4]=>
165: float(0.01)
166: [5]=>
167: float(-0.1)
168: [6]=>
169: float(-10.5)
170: }
171: - Sort flag = SORT_NUMERIC -
172: bool(true)
173: array(7) {
174: [0]=>
175: float(1050)
176: [1]=>
177: float(10.5)
178: [2]=>
179: float(0.5)
180: [3]=>
181: float(0.106)
182: [4]=>
183: float(0.01)
184: [5]=>
185: float(-0.1)
186: [6]=>
187: float(-10.5)
188: }
189:
190: -- Iteration 3 --
191: - With Defualt sort flag -
192: bool(true)
193: array(11) {
194: [0]=>
195: int(33)
196: [1]=>
197: int(2)
198: [2]=>
199: float(0.106)
200: [3]=>
201: float(0.09)
202: [4]=>
203: float(0.0021)
204: [5]=>
205: float(0.0001)
206: [6]=>
207: int(0)
208: [7]=>
209: float(-0.01)
210: [8]=>
211: float(-0.106)
212: [9]=>
213: float(-0.9)
214: [10]=>
215: int(-1)
216: }
217: - Sort flag = SORT_REGULAR -
218: bool(true)
219: array(11) {
220: [0]=>
221: int(33)
222: [1]=>
223: int(2)
224: [2]=>
225: float(0.106)
226: [3]=>
227: float(0.09)
228: [4]=>
229: float(0.0021)
230: [5]=>
231: float(0.0001)
232: [6]=>
233: int(0)
234: [7]=>
235: float(-0.01)
236: [8]=>
237: float(-0.106)
238: [9]=>
239: float(-0.9)
240: [10]=>
241: int(-1)
242: }
243: - Sort flag = SORT_NUMERIC -
244: bool(true)
245: array(11) {
246: [0]=>
247: int(33)
248: [1]=>
249: int(2)
250: [2]=>
251: float(0.106)
252: [3]=>
253: float(0.09)
254: [4]=>
255: float(0.0021)
256: [5]=>
257: float(0.0001)
258: [6]=>
259: int(0)
260: [7]=>
261: float(-0.01)
262: [8]=>
263: float(-0.106)
264: [9]=>
265: float(-0.9)
266: [10]=>
267: int(-1)
268: }
269:
270: -- Iteration 4 --
271: - With Defualt sort flag -
272: bool(true)
273: array(7) {
274: [0]=>
275: float(2147483648)
276: [1]=>
277: int(2147483647)
278: [2]=>
279: int(0)
280: [3]=>
281: int(0)
282: [4]=>
283: int(-2147483647)
284: [5]=>
285: float(-2147483648)
286: [6]=>
287: float(-2147483649)
288: }
289: - Sort flag = SORT_REGULAR -
290: bool(true)
291: array(7) {
292: [0]=>
293: float(2147483648)
294: [1]=>
295: int(2147483647)
296: [2]=>
297: int(0)
298: [3]=>
299: int(0)
300: [4]=>
301: int(-2147483647)
302: [5]=>
303: float(-2147483648)
304: [6]=>
305: float(-2147483649)
306: }
307: - Sort flag = SORT_NUMERIC -
308: bool(true)
309: array(7) {
310: [0]=>
311: float(2147483648)
312: [1]=>
313: int(2147483647)
314: [2]=>
315: int(0)
316: [3]=>
317: int(0)
318: [4]=>
319: int(-2147483647)
320: [5]=>
321: float(-2147483648)
322: [6]=>
323: float(-2147483649)
324: }
325: Done
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>