Annotation of embedaddon/php/ext/standard/tests/array/each_variation5.phpt, revision 1.1.1.1
1.1 misho 1: --TEST--
2: Test each() function : usage variations - Multi-dimensional arrays
3: --FILE--
4: <?php
5: /* Prototype : array each(array $arr)
6: * Description: Return the currently pointed key..value pair in the passed array,
7: * and advance the pointer to the next element
8: * Source code: Zend/zend_builtin_functions.c
9: */
10:
11: /*
12: * Test behaviour of each() when passed:
13: * 1. a two-dimensional array
14: * 2. a sub-array
15: */
16:
17: echo "*** Testing each() : usage variations ***\n";
18:
19: $arr = array ('zero',
20: array(1, 2, 3),
21: 'one' => 'un',
22: array('a', 'b', 'c')
23: );
24:
25: echo "\n-- Pass each() a two-dimensional array --\n";
26: for ($i = 1; $i < count($arr); $i++) {
27: var_dump( each($arr) );
28: }
29:
30: echo "\n-- Pass each() a sub-array --\n";
31: var_dump( each($arr[2]));
32:
33: echo "Done";
34: ?>
35:
36: --EXPECTF--
37: *** Testing each() : usage variations ***
38:
39: -- Pass each() a two-dimensional array --
40: array(4) {
41: [1]=>
42: string(4) "zero"
43: ["value"]=>
44: string(4) "zero"
45: [0]=>
46: int(0)
47: ["key"]=>
48: int(0)
49: }
50: array(4) {
51: [1]=>
52: array(3) {
53: [0]=>
54: int(1)
55: [1]=>
56: int(2)
57: [2]=>
58: int(3)
59: }
60: ["value"]=>
61: array(3) {
62: [0]=>
63: int(1)
64: [1]=>
65: int(2)
66: [2]=>
67: int(3)
68: }
69: [0]=>
70: int(1)
71: ["key"]=>
72: int(1)
73: }
74: array(4) {
75: [1]=>
76: string(2) "un"
77: ["value"]=>
78: string(2) "un"
79: [0]=>
80: string(3) "one"
81: ["key"]=>
82: string(3) "one"
83: }
84:
85: -- Pass each() a sub-array --
86: array(4) {
87: [1]=>
88: string(1) "a"
89: ["value"]=>
90: string(1) "a"
91: [0]=>
92: int(0)
93: ["key"]=>
94: int(0)
95: }
96: Done
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>