Вот небольшой пример того, что происходит в моем коде:
Код: Выделить всё
Class Test {
public $a = 'a';
protected $b = 'b';
private $c = 'c';
}
$test = new Test();
$test->foo = "bar";
Свойство foo считается общедоступным свойством, потому что я могу это сделать.
Код: Выделить всё
echo $test->foo; // Gives: bar
Код: Выделить всё
echo $test->b; // Gives: Cannot access protected property Test::$b
echo $test->c; // Gives: Cannot access private property Test::$c
Первое
Код: Выделить всё
var_dump(get_object_vars($test));
Код: Выделить всё
array (size=2)
'a' => string 'a' (length=1)
'foo' => string 'bar' (length=3)
Код: Выделить всё
$reflection = new ReflectionClass($test);
$properties = $reflection->getProperties(ReflectionProperty::IS_PUBLIC | ReflectionProperty::IS_PRIVATE | ReflectionProperty::IS_PROTECTED);
foreach($properties as $property) {
echo $property->__toString()."
";
}
Код: Выделить всё
Property [ public $a ]
Property [ protected $b ]
Property [ private $c ]
Что я могу сделать, чтобы получить все свойства? (желательно с помощью Reflection, потому что я также хочу знать, является ли свойство общедоступным, частным,...)
Подробнее здесь: https://stackoverflow.com/questions/229 ... properties
Мобильная версия