Annotation of embedaddon/php/ext/reflection/tests/ReflectionClass_getProperties_003.phpt, revision 1.1

1.1     ! misho       1: --TEST--
        !             2: ReflectionClass::getProperties()
        !             3: --CREDITS--
        !             4: Robin Fernandes <robinf@php.net>
        !             5: Steve Seear <stevseea@php.net>
        !             6: --FILE--
        !             7: <?php
        !             8: class C {
        !             9:        public  $pub1;
        !            10:        public  $pub2;
        !            11:        private  $priv1;
        !            12:        private  $priv2;
        !            13:        static public  $pubs;
        !            14:        static public  $pubs2;
        !            15:        static private  $privs1;
        !            16:        static private  $privs2;
        !            17: }
        !            18: 
        !            19: $rc = new ReflectionClass("C");
        !            20: $StaticFlag = 0x01;
        !            21: $pubFlag =  0x100;
        !            22: $privFlag = 0x400;
        !            23: 
        !            24: echo "No properties:";
        !            25: var_dump($rc->getProperties(0));
        !            26: 
        !            27: echo "Public properties:";
        !            28: var_dump($rc->getProperties($pubFlag));
        !            29: 
        !            30: echo "Private properties:";
        !            31: var_dump($rc->getProperties($privFlag));
        !            32: 
        !            33: echo "Public or static properties:";
        !            34: var_dump($rc->getProperties($StaticFlag | $pubFlag));
        !            35: 
        !            36: echo "Private or static properties:";
        !            37: var_dump($rc->getProperties($StaticFlag | $privFlag));
        !            38: ?>
        !            39: --EXPECTF--
        !            40: No properties:array(0) {
        !            41: }
        !            42: Public properties:array(4) {
        !            43:   [0]=>
        !            44:   &object(ReflectionProperty)#%d (2) {
        !            45:     ["name"]=>
        !            46:     string(4) "pub1"
        !            47:     ["class"]=>
        !            48:     string(1) "C"
        !            49:   }
        !            50:   [1]=>
        !            51:   &object(ReflectionProperty)#%d (2) {
        !            52:     ["name"]=>
        !            53:     string(4) "pub2"
        !            54:     ["class"]=>
        !            55:     string(1) "C"
        !            56:   }
        !            57:   [2]=>
        !            58:   &object(ReflectionProperty)#%d (2) {
        !            59:     ["name"]=>
        !            60:     string(4) "pubs"
        !            61:     ["class"]=>
        !            62:     string(1) "C"
        !            63:   }
        !            64:   [3]=>
        !            65:   &object(ReflectionProperty)#%d (2) {
        !            66:     ["name"]=>
        !            67:     string(5) "pubs2"
        !            68:     ["class"]=>
        !            69:     string(1) "C"
        !            70:   }
        !            71: }
        !            72: Private properties:array(4) {
        !            73:   [0]=>
        !            74:   &object(ReflectionProperty)#%d (2) {
        !            75:     ["name"]=>
        !            76:     string(5) "priv1"
        !            77:     ["class"]=>
        !            78:     string(1) "C"
        !            79:   }
        !            80:   [1]=>
        !            81:   &object(ReflectionProperty)#%d (2) {
        !            82:     ["name"]=>
        !            83:     string(5) "priv2"
        !            84:     ["class"]=>
        !            85:     string(1) "C"
        !            86:   }
        !            87:   [2]=>
        !            88:   &object(ReflectionProperty)#%d (2) {
        !            89:     ["name"]=>
        !            90:     string(6) "privs1"
        !            91:     ["class"]=>
        !            92:     string(1) "C"
        !            93:   }
        !            94:   [3]=>
        !            95:   &object(ReflectionProperty)#%d (2) {
        !            96:     ["name"]=>
        !            97:     string(6) "privs2"
        !            98:     ["class"]=>
        !            99:     string(1) "C"
        !           100:   }
        !           101: }
        !           102: Public or static properties:array(6) {
        !           103:   [0]=>
        !           104:   &object(ReflectionProperty)#%d (2) {
        !           105:     ["name"]=>
        !           106:     string(4) "pub1"
        !           107:     ["class"]=>
        !           108:     string(1) "C"
        !           109:   }
        !           110:   [1]=>
        !           111:   &object(ReflectionProperty)#%d (2) {
        !           112:     ["name"]=>
        !           113:     string(4) "pub2"
        !           114:     ["class"]=>
        !           115:     string(1) "C"
        !           116:   }
        !           117:   [2]=>
        !           118:   &object(ReflectionProperty)#%d (2) {
        !           119:     ["name"]=>
        !           120:     string(4) "pubs"
        !           121:     ["class"]=>
        !           122:     string(1) "C"
        !           123:   }
        !           124:   [3]=>
        !           125:   &object(ReflectionProperty)#%d (2) {
        !           126:     ["name"]=>
        !           127:     string(5) "pubs2"
        !           128:     ["class"]=>
        !           129:     string(1) "C"
        !           130:   }
        !           131:   [4]=>
        !           132:   &object(ReflectionProperty)#%d (2) {
        !           133:     ["name"]=>
        !           134:     string(6) "privs1"
        !           135:     ["class"]=>
        !           136:     string(1) "C"
        !           137:   }
        !           138:   [5]=>
        !           139:   &object(ReflectionProperty)#%d (2) {
        !           140:     ["name"]=>
        !           141:     string(6) "privs2"
        !           142:     ["class"]=>
        !           143:     string(1) "C"
        !           144:   }
        !           145: }
        !           146: Private or static properties:array(6) {
        !           147:   [0]=>
        !           148:   &object(ReflectionProperty)#%d (2) {
        !           149:     ["name"]=>
        !           150:     string(5) "priv1"
        !           151:     ["class"]=>
        !           152:     string(1) "C"
        !           153:   }
        !           154:   [1]=>
        !           155:   &object(ReflectionProperty)#%d (2) {
        !           156:     ["name"]=>
        !           157:     string(5) "priv2"
        !           158:     ["class"]=>
        !           159:     string(1) "C"
        !           160:   }
        !           161:   [2]=>
        !           162:   &object(ReflectionProperty)#%d (2) {
        !           163:     ["name"]=>
        !           164:     string(4) "pubs"
        !           165:     ["class"]=>
        !           166:     string(1) "C"
        !           167:   }
        !           168:   [3]=>
        !           169:   &object(ReflectionProperty)#%d (2) {
        !           170:     ["name"]=>
        !           171:     string(5) "pubs2"
        !           172:     ["class"]=>
        !           173:     string(1) "C"
        !           174:   }
        !           175:   [4]=>
        !           176:   &object(ReflectionProperty)#%d (2) {
        !           177:     ["name"]=>
        !           178:     string(6) "privs1"
        !           179:     ["class"]=>
        !           180:     string(1) "C"
        !           181:   }
        !           182:   [5]=>
        !           183:   &object(ReflectionProperty)#%d (2) {
        !           184:     ["name"]=>
        !           185:     string(6) "privs2"
        !           186:     ["class"]=>
        !           187:     string(1) "C"
        !           188:   }
        !           189: }

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