Annotation of embedaddon/php/ext/standard/tests/array/shuffle_variation3.phpt, revision 1.1.1.1
1.1 misho 1: --TEST--
2: Test shuffle() function : usage variation - arrays with diff types of values
3: --FILE--
4: <?php
5: /* Prototype : bool shuffle(array $array_arg)
6: * Description: Randomly shuffle the contents of an array
7: * Source code: ext/standard/array.c
8: */
9:
10: /*
11: * Test behaviour of shuffle() function when arrays having different
12: * types of values, are passed to 'array_arg' argument
13: */
14:
15: echo "*** Testing shuffle() : arrays with diff types of values ***\n";
16:
17: // initialise different arrays
18: $array_arg = array(
19: // array with positive int values
20: /*1*/ array(0, 1, 2, 2147483647 ),
21:
22: // array with negative int values
23: array(-1, -2, -2147483647 ),
24:
25: // array with positive float values
26: /*3*/ array(0.23, 1.34, 0e2, 200e-2, 30e2, 10e0, 2147473648.90),
27:
28: // array with negative float values
29: array(-0.23, -1.34, -200e-2, -30e2, -10e0, -2147473649.80),
30:
31: // array with single quoted and double quoted strings
32: /*5*/ array('one', "123numbers", 'hello\tworld', "hello world\0", '12.34floatnum'),
33:
34: // array with bool values
35: array(true, TRUE, FALSE, false),
36:
37: // array with positive hexa values
38: /*7*/ array(0x123, 0xabc, 0xABC, 0xac, 0xAb1, 0x9fa),
39:
40: // array with negative hexa values
41: array(-0x123, -0xabc, -0xABC, -0xAb1, -0x9fa),
42:
43: // array with positive octal values
44: /*9*/ array(0123, 02348, 034, 00),
45:
46: // array with negative octal values
47: /*10*/ array(-0123, -02348, -034),
48:
49: );
50:
51: // looping to test shuffle() with each sub-array in the $array_arg array
52: echo "\n*** Testing shuffle() with arrays having different types of values ***\n";
53: $counter = 1;
54: foreach($array_arg as $arr) {
55: echo "\n-- Iteration $counter --\n";
56: var_dump( shuffle($arr) );
57: echo "\nThe output array is:\n";
58: var_dump( $arr );
59: $counter++;
60: }
61:
62: echo "Done";
63: ?>
64: --EXPECTF--
65: *** Testing shuffle() : arrays with diff types of values ***
66:
67: *** Testing shuffle() with arrays having different types of values ***
68:
69: -- Iteration 1 --
70: bool(true)
71:
72: The output array is:
73: array(4) {
74: [0]=>
75: int(%d)
76: [1]=>
77: int(%d)
78: [2]=>
79: int(%d)
80: [3]=>
81: int(%d)
82: }
83:
84: -- Iteration 2 --
85: bool(true)
86:
87: The output array is:
88: array(3) {
89: [0]=>
90: int(-%d)
91: [1]=>
92: int(-%d)
93: [2]=>
94: int(-%d)
95: }
96:
97: -- Iteration 3 --
98: bool(true)
99:
100: The output array is:
101: array(7) {
102: [0]=>
103: float(%f)
104: [1]=>
105: float(%f)
106: [2]=>
107: float(%f)
108: [3]=>
109: float(%f)
110: [4]=>
111: float(%f)
112: [5]=>
113: float(%f)
114: [6]=>
115: float(%f)
116: }
117:
118: -- Iteration 4 --
119: bool(true)
120:
121: The output array is:
122: array(6) {
123: [0]=>
124: float(-%f)
125: [1]=>
126: float(-%f)
127: [2]=>
128: float(-%f)
129: [3]=>
130: float(-%f)
131: [4]=>
132: float(-%f)
133: [5]=>
134: float(-%f)
135: }
136:
137: -- Iteration 5 --
138: bool(true)
139:
140: The output array is:
141: array(5) {
142: [0]=>
143: string(%d) "%s"
144: [1]=>
145: string(%d) "%s"
146: [2]=>
147: string(%d) "%s"
148: [3]=>
149: string(%d) "%s"
150: [4]=>
151: string(%d) "%s"
152: }
153:
154: -- Iteration 6 --
155: bool(true)
156:
157: The output array is:
158: array(4) {
159: [0]=>
160: bool(%s)
161: [1]=>
162: bool(%s)
163: [2]=>
164: bool(%s)
165: [3]=>
166: bool(%s)
167: }
168:
169: -- Iteration 7 --
170: bool(true)
171:
172: The output array is:
173: array(6) {
174: [0]=>
175: int(%d)
176: [1]=>
177: int(%d)
178: [2]=>
179: int(%d)
180: [3]=>
181: int(%d)
182: [4]=>
183: int(%d)
184: [5]=>
185: int(%d)
186: }
187:
188: -- Iteration 8 --
189: bool(true)
190:
191: The output array is:
192: array(5) {
193: [0]=>
194: int(-%d)
195: [1]=>
196: int(-%d)
197: [2]=>
198: int(-%d)
199: [3]=>
200: int(-%d)
201: [4]=>
202: int(-%d)
203: }
204:
205: -- Iteration 9 --
206: bool(true)
207:
208: The output array is:
209: array(4) {
210: [0]=>
211: int(%d)
212: [1]=>
213: int(%d)
214: [2]=>
215: int(%d)
216: [3]=>
217: int(%d)
218: }
219:
220: -- Iteration 10 --
221: bool(true)
222:
223: The output array is:
224: array(3) {
225: [0]=>
226: int(-%d)
227: [1]=>
228: int(-%d)
229: [2]=>
230: int(-%d)
231: }
232: Done
233:
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>