123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112 |
- --TEST--
- ReflectionClass::[gs]etStaticPropertyValue
- --FILE--
- <?php
- /* ReflectionClass cannot touch protected or private static properties */
- /* ReflectionClass cannot create or delete static properties */
- Class Test
- {
- static public $pub = 'pub';
- static protected $pro = 'pro';
- static private $pri = 'pri';
- static function testing()
- {
- $ref = new ReflectionClass('Test');
- foreach(array('pub', 'pro', 'pri') as $name)
- {
- try
- {
- var_dump($ref->getStaticPropertyValue($name));
- var_dump($ref->getStaticPropertyValue($name));
- $ref->setStaticPropertyValue($name, 'updated');
- var_dump($ref->getStaticPropertyValue($name));
- }
- catch(Exception $e)
- {
- echo "EXCEPTION\n";
- }
- }
- }
- }
- Class TestDerived extends Test
- {
- // static public $pub = 'pub';
- // static protected $pro = 'pro';
- static private $pri = 'pri';
- static function testing()
- {
- $ref = new ReflectionClass('Test');
- foreach(array('pub', 'pro', 'pri') as $name)
- {
- try
- {
- var_dump($ref->getStaticPropertyValue($name));
- var_dump($ref->getStaticPropertyValue($name));
- $ref->setStaticPropertyValue($name, 'updated');
- var_dump($ref->getStaticPropertyValue($name));
- }
- catch(Exception $e)
- {
- echo "EXCEPTION\n";
- }
- }
- }
- }
- $ref = new ReflectionClass('Test');
- foreach(array('pub', 'pro', 'pri') as $name)
- {
- try
- {
- var_dump($ref->getStaticPropertyValue($name));
- var_dump($ref->getStaticPropertyValue($name));
- $ref->setStaticPropertyValue($name, 'updated');
- var_dump($ref->getStaticPropertyValue($name));
- }
- catch(Exception $e)
- {
- echo "EXCEPTION\n";
- }
- }
- Test::testing();
- TestDerived::testing();
- ?>
- --EXPECT--
- string(3) "pub"
- string(3) "pub"
- string(7) "updated"
- string(3) "pro"
- string(3) "pro"
- string(7) "updated"
- string(3) "pri"
- string(3) "pri"
- string(7) "updated"
- string(7) "updated"
- string(7) "updated"
- string(7) "updated"
- string(7) "updated"
- string(7) "updated"
- string(7) "updated"
- string(7) "updated"
- string(7) "updated"
- string(7) "updated"
- string(7) "updated"
- string(7) "updated"
- string(7) "updated"
- string(7) "updated"
- string(7) "updated"
- string(7) "updated"
- string(7) "updated"
- string(7) "updated"
- string(7) "updated"
|