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

1.1     ! misho       1: --TEST--
        !             2: Test array_key_exists() function : usage variations - floats and casting to ints
        !             3: --FILE--
        !             4: <?php
        !             5: /* Prototype  : bool array_key_exists(mixed $key, array $search)
        !             6:  * Description: Checks if the given key or index exists in the array 
        !             7:  * Source code: ext/standard/array.c
        !             8:  * Alias to functions: key_exists
        !             9:  */
        !            10: 
        !            11: /*
        !            12:  * Pass floats as $key argument, then cast float values
        !            13:  * to integers and pass as $key argument
        !            14:  */
        !            15: 
        !            16: echo "*** Testing array_key_exists() : usage variations ***\n";
        !            17: 
        !            18: $keys = array(1.2345678900E-10, 1.00000000000001, 1.99999999999999);
        !            19: 
        !            20: $search = array ('zero', 'one', 'two');
        !            21: 
        !            22: $iterator = 1;
        !            23: foreach($keys as $key) {
        !            24:        echo "\n-- Iteration $iterator --\n";
        !            25:        echo "Pass float as \$key:\n";
        !            26:        var_dump(array_key_exists($key, $search));
        !            27:        echo "Cast float to int:\n";
        !            28:        var_dump(array_key_exists((int)$key, $search));
        !            29: }
        !            30: 
        !            31: echo "Done";
        !            32: ?>
        !            33: 
        !            34: --EXPECTF--
        !            35: *** Testing array_key_exists() : usage variations ***
        !            36: 
        !            37: -- Iteration 1 --
        !            38: Pass float as $key:
        !            39: 
        !            40: Warning: array_key_exists(): The first argument should be either a string or an integer in %s on line %d
        !            41: bool(false)
        !            42: Cast float to int:
        !            43: bool(true)
        !            44: 
        !            45: -- Iteration 1 --
        !            46: Pass float as $key:
        !            47: 
        !            48: Warning: array_key_exists(): The first argument should be either a string or an integer in %s on line %d
        !            49: bool(false)
        !            50: Cast float to int:
        !            51: bool(true)
        !            52: 
        !            53: -- Iteration 1 --
        !            54: Pass float as $key:
        !            55: 
        !            56: Warning: array_key_exists(): The first argument should be either a string or an integer in %s on line %d
        !            57: bool(false)
        !            58: Cast float to int:
        !            59: bool(true)
        !            60: Done

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