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

1.1     ! misho       1: --TEST--
        !             2: ReflectionMethod::getModifiers()
        !             3: --FILE--
        !             4: <?php
        !             5: 
        !             6: function reflectMethodModifiers($class) {
        !             7:     $classInfo = new reflectionClass($class);
        !             8:     $methodArray = $classInfo->getMethods();
        !             9: 
        !            10:     foreach ($methodArray as $method) {
        !            11:         echo "Modifiers for method $method->class::$method->name():\n";
        !            12:         var_dump($method->getModifiers());
        !            13:         echo "\n\n";
        !            14:     }
        !            15: }
        !            16: 
        !            17: class TestClass
        !            18: {
        !            19:     public function foo() {
        !            20:         echo "Called foo()\n";
        !            21:     }
        !            22: 
        !            23:     static function stat() {
        !            24:         echo "Called stat()\n";
        !            25:     }
        !            26: 
        !            27:     private function priv() {
        !            28:         echo "Called priv()\n";
        !            29:     }
        !            30: 
        !            31:     protected function prot() {}
        !            32: 
        !            33:     public final function fin() {}
        !            34: 
        !            35:     public function __destruct() {}
        !            36: 
        !            37:     public function __call($a, $b) {}
        !            38: 
        !            39:     public function __clone() {}
        !            40: 
        !            41:     public function __get($a) {}
        !            42: 
        !            43:     public function __set($a, $b) {}
        !            44: 
        !            45:     public function __unset($a) {}
        !            46: 
        !            47:     public function __isset($a) {}
        !            48: 
        !            49:     public function __tostring() {}
        !            50: 
        !            51:     public function __sleep() {}
        !            52: 
        !            53:     public function __wakeup() {}
        !            54: 
        !            55:     public function __set_state() {}
        !            56: 
        !            57:     public function __autoload() {}
        !            58: }
        !            59: 
        !            60: class DerivedClass extends TestClass {}
        !            61: 
        !            62: interface TestInterface {
        !            63:        public function int();
        !            64:        public function __clone();
        !            65: }
        !            66: 
        !            67: abstract class AbstractClass {
        !            68:        public abstract function foo();
        !            69: }
        !            70: 
        !            71: 
        !            72: 
        !            73: reflectMethodModifiers("TestClass");
        !            74: reflectMethodModifiers("DerivedClass");
        !            75: reflectMethodModifiers("TestInterface");
        !            76: reflectMethodModifiers("AbstractClass");
        !            77: 
        !            78: echo "Wrong number of params:\n";
        !            79: $a = new ReflectionMethod('TestClass::foo');
        !            80: $a->getModifiers(1);
        !            81: 
        !            82: $a = new ReflectionMethod('ReflectionMethod::getModifiers');
        !            83: 
        !            84: echo "\nReflectionMethod::getModifiers() modifiers:\n";
        !            85: var_dump($a->getModifiers());
        !            86: 
        !            87: ?>
        !            88: --EXPECTF--
        !            89: Modifiers for method TestClass::foo():
        !            90: int(65792)
        !            91: 
        !            92: 
        !            93: Modifiers for method TestClass::stat():
        !            94: int(257)
        !            95: 
        !            96: 
        !            97: Modifiers for method TestClass::priv():
        !            98: int(66560)
        !            99: 
        !           100: 
        !           101: Modifiers for method TestClass::prot():
        !           102: int(66048)
        !           103: 
        !           104: 
        !           105: Modifiers for method TestClass::fin():
        !           106: int(65796)
        !           107: 
        !           108: 
        !           109: Modifiers for method TestClass::__destruct():
        !           110: int(16640)
        !           111: 
        !           112: 
        !           113: Modifiers for method TestClass::__call():
        !           114: int(256)
        !           115: 
        !           116: 
        !           117: Modifiers for method TestClass::__clone():
        !           118: int(33024)
        !           119: 
        !           120: 
        !           121: Modifiers for method TestClass::__get():
        !           122: int(256)
        !           123: 
        !           124: 
        !           125: Modifiers for method TestClass::__set():
        !           126: int(256)
        !           127: 
        !           128: 
        !           129: Modifiers for method TestClass::__unset():
        !           130: int(256)
        !           131: 
        !           132: 
        !           133: Modifiers for method TestClass::__isset():
        !           134: int(256)
        !           135: 
        !           136: 
        !           137: Modifiers for method TestClass::__tostring():
        !           138: int(256)
        !           139: 
        !           140: 
        !           141: Modifiers for method TestClass::__sleep():
        !           142: int(65792)
        !           143: 
        !           144: 
        !           145: Modifiers for method TestClass::__wakeup():
        !           146: int(65792)
        !           147: 
        !           148: 
        !           149: Modifiers for method TestClass::__set_state():
        !           150: int(65792)
        !           151: 
        !           152: 
        !           153: Modifiers for method TestClass::__autoload():
        !           154: int(65792)
        !           155: 
        !           156: 
        !           157: Modifiers for method TestClass::foo():
        !           158: int(65792)
        !           159: 
        !           160: 
        !           161: Modifiers for method TestClass::stat():
        !           162: int(257)
        !           163: 
        !           164: 
        !           165: Modifiers for method TestClass::priv():
        !           166: int(66560)
        !           167: 
        !           168: 
        !           169: Modifiers for method TestClass::prot():
        !           170: int(66048)
        !           171: 
        !           172: 
        !           173: Modifiers for method TestClass::fin():
        !           174: int(65796)
        !           175: 
        !           176: 
        !           177: Modifiers for method TestClass::__destruct():
        !           178: int(16640)
        !           179: 
        !           180: 
        !           181: Modifiers for method TestClass::__call():
        !           182: int(256)
        !           183: 
        !           184: 
        !           185: Modifiers for method TestClass::__clone():
        !           186: int(33024)
        !           187: 
        !           188: 
        !           189: Modifiers for method TestClass::__get():
        !           190: int(256)
        !           191: 
        !           192: 
        !           193: Modifiers for method TestClass::__set():
        !           194: int(256)
        !           195: 
        !           196: 
        !           197: Modifiers for method TestClass::__unset():
        !           198: int(256)
        !           199: 
        !           200: 
        !           201: Modifiers for method TestClass::__isset():
        !           202: int(256)
        !           203: 
        !           204: 
        !           205: Modifiers for method TestClass::__tostring():
        !           206: int(256)
        !           207: 
        !           208: 
        !           209: Modifiers for method TestClass::__sleep():
        !           210: int(65792)
        !           211: 
        !           212: 
        !           213: Modifiers for method TestClass::__wakeup():
        !           214: int(65792)
        !           215: 
        !           216: 
        !           217: Modifiers for method TestClass::__set_state():
        !           218: int(65792)
        !           219: 
        !           220: 
        !           221: Modifiers for method TestClass::__autoload():
        !           222: int(65792)
        !           223: 
        !           224: 
        !           225: Modifiers for method TestInterface::int():
        !           226: int(258)
        !           227: 
        !           228: 
        !           229: Modifiers for method TestInterface::__clone():
        !           230: int(258)
        !           231: 
        !           232: 
        !           233: Modifiers for method AbstractClass::foo():
        !           234: int(65794)
        !           235: 
        !           236: 
        !           237: Wrong number of params:
        !           238: 
        !           239: Warning: ReflectionMethod::getModifiers() expects exactly 0 parameters, 1 given in %s on line %d
        !           240: 
        !           241: ReflectionMethod::getModifiers() modifiers:
        !           242: int(256)

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