Annotation of embedaddon/php/Zend/tests/objects_024.phpt, revision 1.1

1.1     ! misho       1: --TEST--
        !             2: Testing direct assigning for property of object returned by function
        !             3: --FILE--
        !             4: <?php 
        !             5: 
        !             6: class foo {
        !             7:        static $bar = array();
        !             8:        
        !             9:        public function __set($a, $b) {
        !            10:                self::$bar[] = $b;
        !            11:        }
        !            12:        
        !            13:        public function __get($a) {
        !            14:                /* last */
        !            15:                return self::$bar[count(self::$bar)-1];
        !            16:        }
        !            17: }
        !            18: 
        !            19: function test() {
        !            20:        return new foo;
        !            21: }
        !            22: 
        !            23: $a = test()->bar = 1;
        !            24: var_dump($a, count(foo::$bar), test()->whatever);
        !            25: 
        !            26: print "\n";
        !            27: 
        !            28: $a = test()->bar = NULL;
        !            29: var_dump($a, count(foo::$bar), test()->whatever);
        !            30: 
        !            31: print "\n";
        !            32: 
        !            33: $a = test()->bar = test();
        !            34: var_dump($a, count(foo::$bar), test()->whatever);
        !            35: 
        !            36: print "\n";
        !            37: 
        !            38: ?>
        !            39: --EXPECTF--
        !            40: int(1)
        !            41: int(1)
        !            42: int(1)
        !            43: 
        !            44: NULL
        !            45: int(2)
        !            46: NULL
        !            47: 
        !            48: object(foo)#%d (0) {
        !            49: }
        !            50: int(3)
        !            51: object(foo)#%d (0) {
        !            52: }
        !            53: 

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