Annotation of embedaddon/php/ext/standard/tests/array/array_shift_variation4.phpt, revision 1.1.1.1

1.1       misho       1: --TEST--
                      2: Test array_shift() function : usage variations - multi-dimensional arrays
                      3: --FILE--
                      4: <?php
                      5: /* Prototype  : mixed array_shift(array &$stack)
                      6:  * Description: Pops an element off the beginning of the array 
                      7:  * Source code: ext/standard/array.c
                      8:  */
                      9: 
                     10: /*
                     11:  * Test popping elements from a sub-array and popping an array from an array
                     12:  */
                     13: 
                     14: echo "*** Testing array_shift() : usage variations ***\n";
                     15: 
                     16: $stack_first = array(array(1, 2, 3), 'one', 'two');
                     17: $stack_last = array ('zero', 'one', array (1, 2, 3));
                     18: echo "\n-- Before shift: --\n";
                     19: echo "---- \$stack_first:\n";
                     20: var_dump($stack_first);
                     21: echo "---- \$stack_last:\n";
                     22: var_dump($stack_last);
                     23: 
                     24: echo "\n-- After shift: --\n";
                     25: echo "---- Pop array from array:\n";
                     26: echo "Returned value:\t";
                     27: var_dump(array_shift($stack_first));
                     28: echo "New array:\n";
                     29: var_dump($stack_first);
                     30: 
                     31: echo "---- Pop element from array within array:\n";
                     32: echo "Returned value:\t";
                     33: var_dump(array_shift($stack_last[2]));
                     34: echo "New array:\n";
                     35: var_dump($stack_last);
                     36: 
                     37: echo "Done";
                     38: ?>
                     39: --EXPECTF--
                     40: *** Testing array_shift() : usage variations ***
                     41: 
                     42: -- Before shift: --
                     43: ---- $stack_first:
                     44: array(3) {
                     45:   [0]=>
                     46:   array(3) {
                     47:     [0]=>
                     48:     int(1)
                     49:     [1]=>
                     50:     int(2)
                     51:     [2]=>
                     52:     int(3)
                     53:   }
                     54:   [1]=>
                     55:   string(3) "one"
                     56:   [2]=>
                     57:   string(3) "two"
                     58: }
                     59: ---- $stack_last:
                     60: array(3) {
                     61:   [0]=>
                     62:   string(4) "zero"
                     63:   [1]=>
                     64:   string(3) "one"
                     65:   [2]=>
                     66:   array(3) {
                     67:     [0]=>
                     68:     int(1)
                     69:     [1]=>
                     70:     int(2)
                     71:     [2]=>
                     72:     int(3)
                     73:   }
                     74: }
                     75: 
                     76: -- After shift: --
                     77: ---- Pop array from array:
                     78: Returned value:        array(3) {
                     79:   [0]=>
                     80:   int(1)
                     81:   [1]=>
                     82:   int(2)
                     83:   [2]=>
                     84:   int(3)
                     85: }
                     86: New array:
                     87: array(2) {
                     88:   [0]=>
                     89:   string(3) "one"
                     90:   [1]=>
                     91:   string(3) "two"
                     92: }
                     93: ---- Pop element from array within array:
                     94: Returned value:        int(1)
                     95: New array:
                     96: array(3) {
                     97:   [0]=>
                     98:   string(4) "zero"
                     99:   [1]=>
                    100:   string(3) "one"
                    101:   [2]=>
                    102:   array(2) {
                    103:     [0]=>
                    104:     int(2)
                    105:     [1]=>
                    106:     int(3)
                    107:   }
                    108: }
                    109: Done

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>