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

1.1     ! misho       1: --TEST--
        !             2: SPL: ArrayObject/Iterator from IteratorAggregate
        !             3: --FILE--
        !             4: <?php
        !             5: 
        !             6: // This test also needs to exclude the protected and private variables 
        !             7: // since they cannot be accessed from the external object which iterates 
        !             8: // them.
        !             9: 
        !            10: class test implements IteratorAggregate
        !            11: {
        !            12:        public    $pub = "public";
        !            13:        protected $pro = "protected";
        !            14:        private   $pri = "private";
        !            15:        
        !            16:        function __construct()
        !            17:        {
        !            18:                $this->imp = "implicit";
        !            19:        }
        !            20:        
        !            21:        function getIterator()
        !            22:        {
        !            23:                $it = new ArrayObject($this);
        !            24:                return $it->getIterator();
        !            25:        }
        !            26: };
        !            27: 
        !            28: $test = new test;
        !            29: $test->dyn = "dynamic";
        !            30: 
        !            31: print_r($test);
        !            32: 
        !            33: print_r($test->getIterator());
        !            34: 
        !            35: foreach($test as $key => $val)
        !            36: {
        !            37:        echo "$key => $val\n";
        !            38: }
        !            39: 
        !            40: ?>
        !            41: ===DONE===
        !            42: <?php exit(0); ?>
        !            43: --EXPECTF--
        !            44: test Object
        !            45: (
        !            46:     [pub] => public
        !            47:     [pro:protected] => protected
        !            48:     [pri:test:private] => private
        !            49:     [imp] => implicit
        !            50:     [dyn] => dynamic
        !            51: )
        !            52: ArrayIterator Object
        !            53: (
        !            54:     [storage:ArrayIterator:private] => ArrayObject Object
        !            55:         (
        !            56:             [storage:ArrayObject:private] => test Object
        !            57:                 (
        !            58:                     [pub] => public
        !            59:                     [pro:protected] => protected
        !            60:                     [pri:test:private] => private
        !            61:                     [imp] => implicit
        !            62:                     [dyn] => dynamic
        !            63:                 )
        !            64: 
        !            65:         )
        !            66: 
        !            67: )
        !            68: pub => public
        !            69: imp => implicit
        !            70: dyn => dynamic
        !            71: ===DONE===

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