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

1.1     ! misho       1: --TEST--
        !             2: Test array_key_exists() function : object functionality
        !             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:  * Test basic functionality of array_key_exists() with objects
        !            13:  */
        !            14: 
        !            15: echo "*** Testing array_key_exists() : object functionality ***\n";
        !            16: 
        !            17: class myClass {
        !            18:        var $var1;
        !            19:        var $var2;
        !            20:        var $var3;
        !            21:        
        !            22:        function __construct($a, $b, $c = null) {
        !            23:                $this->var1 = $a;
        !            24:                $this->var2 = $b;
        !            25:                if (!is_null($c)) {
        !            26:                        $this->var3 = $c;
        !            27:                }
        !            28:        }
        !            29: }
        !            30: 
        !            31: echo "\n-- Do not assign a value to \$class1->var3 --\n";
        !            32: $class1 = new myClass ('a', 'b');
        !            33: echo "\$key = var1:\n";
        !            34: var_dump(array_key_exists('var1', $class1));
        !            35: echo "\$key = var3:\n";
        !            36: var_dump(array_key_exists('var3', $class1));
        !            37: echo "\$class1:\n";
        !            38: var_dump($class1);
        !            39: 
        !            40: echo "\n-- Assign a value to \$class2->var3 --\n";
        !            41: $class2 = new myClass('x', 'y', 'z');
        !            42: echo "\$key = var3:\n";
        !            43: var_dump(array_key_exists('var3', $class2));
        !            44: echo "\$class2:\n";
        !            45: var_dump($class2);
        !            46: 
        !            47: echo "Done";
        !            48: ?>
        !            49: 
        !            50: --EXPECTF--
        !            51: *** Testing array_key_exists() : object functionality ***
        !            52: 
        !            53: -- Do not assign a value to $class1->var3 --
        !            54: $key = var1:
        !            55: bool(true)
        !            56: $key = var3:
        !            57: bool(true)
        !            58: $class1:
        !            59: object(myClass)#1 (3) {
        !            60:   [%b|u%"var1"]=>
        !            61:   %unicode|string%(1) "a"
        !            62:   [%b|u%"var2"]=>
        !            63:   %unicode|string%(1) "b"
        !            64:   [%b|u%"var3"]=>
        !            65:   NULL
        !            66: }
        !            67: 
        !            68: -- Assign a value to $class2->var3 --
        !            69: $key = var3:
        !            70: bool(true)
        !            71: $class2:
        !            72: object(myClass)#2 (3) {
        !            73:   [%b|u%"var1"]=>
        !            74:   %unicode|string%(1) "x"
        !            75:   [%b|u%"var2"]=>
        !            76:   %unicode|string%(1) "y"
        !            77:   [%b|u%"var3"]=>
        !            78:   %unicode|string%(1) "z"
        !            79: }
        !            80: Done

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