Annotation of embedaddon/php/ext/spl/tests/array_022.phpt, revision 1.1

1.1     ! misho       1: --TEST--
        !             2: SPL: ArrayObject/Iterator and reference to self
        !             3: --FILE--
        !             4: ==ArrayObject===
        !             5: <?php
        !             6: 
        !             7: class MyArrayObject extends ArrayObject
        !             8: {
        !             9:        public function __construct()
        !            10:        {
        !            11:                parent::__construct($this);
        !            12:                $this['bar'] = 'baz';
        !            13:        }
        !            14: }
        !            15: 
        !            16: $a = new MyArrayObject;
        !            17: 
        !            18: $b = clone $a;
        !            19: $b['baz'] = 'Foo';
        !            20: 
        !            21: var_dump($a);
        !            22: var_dump($b);
        !            23: 
        !            24: ?>
        !            25: ==ArrayIterator===
        !            26: <?php
        !            27: 
        !            28: class MyArrayIterator extends ArrayIterator
        !            29: {
        !            30:        public function __construct()
        !            31:        {
        !            32:                parent::__construct($this);
        !            33:                $this['bar'] = 'baz';
        !            34:        }
        !            35: }
        !            36: 
        !            37: $a = new MyArrayIterator;
        !            38: 
        !            39: $b = clone $a;
        !            40: $b['baz'] = 'Foo';
        !            41: 
        !            42: var_dump($a);
        !            43: var_dump($b);
        !            44: 
        !            45: ?>
        !            46: ===DONE===
        !            47: --EXPECTF--    
        !            48: ==ArrayObject===
        !            49: object(MyArrayObject)#%d (1) {
        !            50:   ["bar"]=>
        !            51:   string(3) "baz"
        !            52: }
        !            53: object(MyArrayObject)#%d (3) {
        !            54:   ["bar"]=>
        !            55:   string(3) "baz"
        !            56:   ["baz"]=>
        !            57:   string(3) "Foo"
        !            58:   ["storage":"ArrayObject":private]=>
        !            59:   array(1) {
        !            60:     ["bar"]=>
        !            61:     string(3) "baz"
        !            62:   }
        !            63: }
        !            64: ==ArrayIterator===
        !            65: object(MyArrayIterator)#%d (1) {
        !            66:   ["bar"]=>
        !            67:   string(3) "baz"
        !            68: }
        !            69: object(MyArrayIterator)#%d (3) {
        !            70:   ["bar"]=>
        !            71:   string(3) "baz"
        !            72:   ["baz"]=>
        !            73:   string(3) "Foo"
        !            74:   ["storage":"ArrayIterator":private]=>
        !            75:   object(MyArrayIterator)#%d (1) {
        !            76:     ["bar"]=>
        !            77:     string(3) "baz"
        !            78:   }
        !            79: }
        !            80: ===DONE===

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