Annotation of embedaddon/php/ext/standard/tests/array/array_map_variation13.phpt, revision 1.1

1.1     ! misho       1: --TEST--
        !             2: Test array_map() function : usage variations - callback function with different return types
        !             3: --FILE--
        !             4: <?php
        !             5: /* Prototype  : array array_map  ( callback $callback  , array $arr1  [, array $...  ] )
        !             6:  * Description: Applies the callback to the elements of the given arrays 
        !             7:  * Source code: ext/standard/array.c
        !             8:  */
        !             9: 
        !            10: /*
        !            11:  * Test array_map() by passing different callback function returning:
        !            12:  *   int, string, bool, null values
        !            13:  */
        !            14: 
        !            15: echo "*** Testing array_map() : callback with diff return value ***\n";
        !            16: 
        !            17: $array1 = array(1, 2, 3);
        !            18: $array2 = array(3, 4, 5);
        !            19: 
        !            20: echo "-- with integer return value --\n";
        !            21: function callback_int($a, $b)
        !            22: {
        !            23:   return $a + $b;
        !            24: }
        !            25: var_dump( array_map('callback_int', $array1, $array2));
        !            26: 
        !            27: echo "-- with string return value --\n";
        !            28: function callback_string($a, $b)
        !            29: {
        !            30:   return "$a"."$b";
        !            31: }
        !            32: var_dump( array_map('callback_string', $array1, $array2));
        !            33: 
        !            34: echo "-- with bool return value --\n";
        !            35: function callback_bool($a, $b)
        !            36: {
        !            37:   return TRUE;
        !            38: }
        !            39: var_dump( array_map('callback_bool', $array1, $array2));
        !            40: 
        !            41: echo "-- with null return value --\n";
        !            42: function callback_null($array1)
        !            43: {
        !            44:   return NULL;
        !            45: }
        !            46: var_dump( array_map('callback_null', $array1));
        !            47: 
        !            48: echo "-- with no return value --\n";
        !            49: function callback_without_ret($arr1)
        !            50: {
        !            51:   echo "callback_without_ret called\n";
        !            52: }
        !            53: var_dump( array_map('callback_without_ret', $array1));
        !            54: 
        !            55: echo "Done";
        !            56: ?>
        !            57: --EXPECTF--
        !            58: *** Testing array_map() : callback with diff return value ***
        !            59: -- with integer return value --
        !            60: array(3) {
        !            61:   [0]=>
        !            62:   int(4)
        !            63:   [1]=>
        !            64:   int(6)
        !            65:   [2]=>
        !            66:   int(8)
        !            67: }
        !            68: -- with string return value --
        !            69: array(3) {
        !            70:   [0]=>
        !            71:   string(2) "13"
        !            72:   [1]=>
        !            73:   string(2) "24"
        !            74:   [2]=>
        !            75:   string(2) "35"
        !            76: }
        !            77: -- with bool return value --
        !            78: array(3) {
        !            79:   [0]=>
        !            80:   bool(true)
        !            81:   [1]=>
        !            82:   bool(true)
        !            83:   [2]=>
        !            84:   bool(true)
        !            85: }
        !            86: -- with null return value --
        !            87: array(3) {
        !            88:   [0]=>
        !            89:   NULL
        !            90:   [1]=>
        !            91:   NULL
        !            92:   [2]=>
        !            93:   NULL
        !            94: }
        !            95: -- with no return value --
        !            96: callback_without_ret called
        !            97: callback_without_ret called
        !            98: callback_without_ret called
        !            99: array(3) {
        !           100:   [0]=>
        !           101:   NULL
        !           102:   [1]=>
        !           103:   NULL
        !           104:   [2]=>
        !           105:   NULL
        !           106: }
        !           107: Done

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