Annotation of embedaddon/php/ext/standard/tests/array/array_unshift_variation1.phpt, revision 1.1.1.1
1.1 misho 1: --TEST--
2: Test array_unshift() function : usage variations - unexpected values for 'array' argument
3: --FILE--
4: <?php
5: /* Prototype : int array_unshift(array $array, mixed $var [, mixed ...])
6: * Description: Pushes elements onto the beginning of the array
7: * Source code: ext/standard/array.c
8: */
9:
10: /*
11: * Testing the behavior of array_unshift() by giving values
12: * other than array values for $array argument
13: */
14:
15: echo "*** Testing array_unshift() : unexpected values for \$array argument ***\n";
16:
17: // Initialise $var argument
18: $var = 12;
19:
20: // get a class
21: class classA
22: {
23: public function __toString() {
24: return "Class A object";
25: }
26: }
27:
28: // heredoc string
29: $heredoc = <<<EOT
30: hello world
31: EOT;
32:
33: // get a resource variable
34: $fp = fopen(__FILE__, "r");
35:
36: // get an unset variable
37: $unset_var = 10;
38: unset ($unset_var);
39:
40: // array of unexpected values to be passed to $array argument
41: $arrays = array(
42:
43: // int data
44: /*1*/ 0,
45: 1,
46: 12345,
47: -2345,
48:
49: // float data
50: /*5*/ 10.5,
51: -10.5,
52: 12.3456789000e10,
53: 12.3456789000E-10,
54: .5,
55:
56: // null data
57: /*10*/ NULL,
58: null,
59:
60: // boolean data
61: /*12*/ true,
62: false,
63: TRUE,
64: FALSE,
65:
66: // empty data
67: /*16*/ "",
68: '',
69:
70: // string data
71: /*18*/ "string",
72: 'string',
73: $heredoc,
74:
75: // object data
76: /*21*/ new classA(),
77:
78: // undefined data
79: @$undefined_var,
80:
81: // unset data
82: @$unset_var,
83:
84: // resource variable
85: /*24*/ $fp
86: );
87:
88: // loop through each element of $arrays to test the functionality of array_unshift()
89: $iterator = 1;
90: foreach($arrays as $array) {
91: echo "\n-- Iteration $iterator --";
92:
93: /* with default arguments */
94: // returns element count in the resulting array after arguments are pushed to
95: // beginning of the given array
96: $temp_array = $array;
97: var_dump( array_unshift($temp_array, $var) );
98:
99: // dump the resulting array
100: var_dump($temp_array);
101:
102: /* with optional arguments */
103: // returns element count in the resulting array after arguments are pushed to
104: // beginning of the given array
105: $temp_array = $array;
106: var_dump( array_unshift($temp_array, $var, "hello", 'world') );
107:
108: // dump the resulting array
109: var_dump($temp_array);
110: $iterator++;
111: };
112:
113: // close the file resource used
114: fclose($fp);
115:
116: echo "Done";
117: ?>
118: --EXPECTF--
119: *** Testing array_unshift() : unexpected values for $array argument ***
120:
121: -- Iteration 1 --
122: Warning: array_unshift() expects parameter 1 to be array, integer given in %s on line %d
123: NULL
124: int(0)
125:
126: Warning: array_unshift() expects parameter 1 to be array, integer given in %s on line %d
127: NULL
128: int(0)
129:
130: -- Iteration 2 --
131: Warning: array_unshift() expects parameter 1 to be array, integer given in %s on line %d
132: NULL
133: int(1)
134:
135: Warning: array_unshift() expects parameter 1 to be array, integer given in %s on line %d
136: NULL
137: int(1)
138:
139: -- Iteration 3 --
140: Warning: array_unshift() expects parameter 1 to be array, integer given in %s on line %d
141: NULL
142: int(12345)
143:
144: Warning: array_unshift() expects parameter 1 to be array, integer given in %s on line %d
145: NULL
146: int(12345)
147:
148: -- Iteration 4 --
149: Warning: array_unshift() expects parameter 1 to be array, integer given in %s on line %d
150: NULL
151: int(-2345)
152:
153: Warning: array_unshift() expects parameter 1 to be array, integer given in %s on line %d
154: NULL
155: int(-2345)
156:
157: -- Iteration 5 --
158: Warning: array_unshift() expects parameter 1 to be array, double given in %s on line %d
159: NULL
160: float(10.5)
161:
162: Warning: array_unshift() expects parameter 1 to be array, double given in %s on line %d
163: NULL
164: float(10.5)
165:
166: -- Iteration 6 --
167: Warning: array_unshift() expects parameter 1 to be array, double given in %s on line %d
168: NULL
169: float(-10.5)
170:
171: Warning: array_unshift() expects parameter 1 to be array, double given in %s on line %d
172: NULL
173: float(-10.5)
174:
175: -- Iteration 7 --
176: Warning: array_unshift() expects parameter 1 to be array, double given in %s on line %d
177: NULL
178: float(123456789000)
179:
180: Warning: array_unshift() expects parameter 1 to be array, double given in %s on line %d
181: NULL
182: float(123456789000)
183:
184: -- Iteration 8 --
185: Warning: array_unshift() expects parameter 1 to be array, double given in %s on line %d
186: NULL
187: float(1.23456789E-9)
188:
189: Warning: array_unshift() expects parameter 1 to be array, double given in %s on line %d
190: NULL
191: float(1.23456789E-9)
192:
193: -- Iteration 9 --
194: Warning: array_unshift() expects parameter 1 to be array, double given in %s on line %d
195: NULL
196: float(0.5)
197:
198: Warning: array_unshift() expects parameter 1 to be array, double given in %s on line %d
199: NULL
200: float(0.5)
201:
202: -- Iteration 10 --
203: Warning: array_unshift() expects parameter 1 to be array, null given in %s on line %d
204: NULL
205: NULL
206:
207: Warning: array_unshift() expects parameter 1 to be array, null given in %s on line %d
208: NULL
209: NULL
210:
211: -- Iteration 11 --
212: Warning: array_unshift() expects parameter 1 to be array, null given in %s on line %d
213: NULL
214: NULL
215:
216: Warning: array_unshift() expects parameter 1 to be array, null given in %s on line %d
217: NULL
218: NULL
219:
220: -- Iteration 12 --
221: Warning: array_unshift() expects parameter 1 to be array, boolean given in %s on line %d
222: NULL
223: bool(true)
224:
225: Warning: array_unshift() expects parameter 1 to be array, boolean given in %s on line %d
226: NULL
227: bool(true)
228:
229: -- Iteration 13 --
230: Warning: array_unshift() expects parameter 1 to be array, boolean given in %s on line %d
231: NULL
232: bool(false)
233:
234: Warning: array_unshift() expects parameter 1 to be array, boolean given in %s on line %d
235: NULL
236: bool(false)
237:
238: -- Iteration 14 --
239: Warning: array_unshift() expects parameter 1 to be array, boolean given in %s on line %d
240: NULL
241: bool(true)
242:
243: Warning: array_unshift() expects parameter 1 to be array, boolean given in %s on line %d
244: NULL
245: bool(true)
246:
247: -- Iteration 15 --
248: Warning: array_unshift() expects parameter 1 to be array, boolean given in %s on line %d
249: NULL
250: bool(false)
251:
252: Warning: array_unshift() expects parameter 1 to be array, boolean given in %s on line %d
253: NULL
254: bool(false)
255:
256: -- Iteration 16 --
257: Warning: array_unshift() expects parameter 1 to be array, string given in %s on line %d
258: NULL
259: string(0) ""
260:
261: Warning: array_unshift() expects parameter 1 to be array, string given in %s on line %d
262: NULL
263: string(0) ""
264:
265: -- Iteration 17 --
266: Warning: array_unshift() expects parameter 1 to be array, string given in %s on line %d
267: NULL
268: string(0) ""
269:
270: Warning: array_unshift() expects parameter 1 to be array, string given in %s on line %d
271: NULL
272: string(0) ""
273:
274: -- Iteration 18 --
275: Warning: array_unshift() expects parameter 1 to be array, string given in %s on line %d
276: NULL
277: string(6) "string"
278:
279: Warning: array_unshift() expects parameter 1 to be array, string given in %s on line %d
280: NULL
281: string(6) "string"
282:
283: -- Iteration 19 --
284: Warning: array_unshift() expects parameter 1 to be array, string given in %s on line %d
285: NULL
286: string(6) "string"
287:
288: Warning: array_unshift() expects parameter 1 to be array, string given in %s on line %d
289: NULL
290: string(6) "string"
291:
292: -- Iteration 20 --
293: Warning: array_unshift() expects parameter 1 to be array, string given in %s on line %d
294: NULL
295: string(11) "hello world"
296:
297: Warning: array_unshift() expects parameter 1 to be array, string given in %s on line %d
298: NULL
299: string(11) "hello world"
300:
301: -- Iteration 21 --
302: Warning: array_unshift() expects parameter 1 to be array, object given in %s on line %d
303: NULL
304: object(classA)#1 (0) {
305: }
306:
307: Warning: array_unshift() expects parameter 1 to be array, object given in %s on line %d
308: NULL
309: object(classA)#1 (0) {
310: }
311:
312: -- Iteration 22 --
313: Warning: array_unshift() expects parameter 1 to be array, null given in %s on line %d
314: NULL
315: NULL
316:
317: Warning: array_unshift() expects parameter 1 to be array, null given in %s on line %d
318: NULL
319: NULL
320:
321: -- Iteration 23 --
322: Warning: array_unshift() expects parameter 1 to be array, null given in %s on line %d
323: NULL
324: NULL
325:
326: Warning: array_unshift() expects parameter 1 to be array, null given in %s on line %d
327: NULL
328: NULL
329:
330: -- Iteration 24 --
331: Warning: array_unshift() expects parameter 1 to be array, resource given in %s on line %d
332: NULL
333: resource(%d) of type (stream)
334:
335: Warning: array_unshift() expects parameter 1 to be array, resource given in %s on line %d
336: NULL
337: resource(%d) of type (stream)
338: Done
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>