/
vshmidt
/
php
Обзор
Документация
Войти
/
vshmidt
/
php
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
ext/reflection/tests/bug49719.phpt
43 строки
739 B
Marco Pivetta
Make ReflectionProperty/Method always accessible
08 июл 2021, 11:55
08 июл 2021, 11:55
6e16e1d
Код
Авторство
О чём код?
--TEST-- Bug #49719 (ReflectionClass::hasProperty returns true for a private property in base class) --FILE-- <?php class A { private $a; } class B extends A { private $b; } try { $b = new B; $ref = new ReflectionClass($b); var_dump(property_exists('b', 'a')); var_dump(property_exists($b, 'a')); var_dump($ref->hasProperty('a')); var_dump($ref->getProperty('a')); } catch (Exception $e) { var_dump($e->getMessage()); } class A2 { private $a = 1; } class B2 extends A2 { private $a = 2; } $b2 = new ReflectionClass('B2'); $prop = $b2->getProperty('a'); var_dump($prop->getValue(new b2)); ?> --EXPECT-- bool(false) bool(false) bool(false) string(29) "Property B::$a does not exist" int(2)