Получение названия свойств объектов в рантайме
<?php
function var_name(){
return "name";
}
$f = new stdClass;
$f->{var_name()} = "Bubujka!";
$f->{"e-mail"} = "zendzirou@gmail.com!";
print_r($f);
stdClass Object
(
[name] => Bubujka!
[e-mail] => zendzirou@gmail.com!
)
Получить массив родителей класса или объекта
<?php
class foo { }
class bar extends foo {}
print_r(class_parents(new bar));
print_r(class_parents('bar'));
Array
(
[foo] => foo
)
Array
(
[foo] => foo
)
Получить массив трэйтов, что использует класс или объект
<?php
trait foo { }
class bar {
use foo;
}
print_r(class_uses(new bar));
print_r(class_uses('bar'));
Array
(
[foo] => foo
)
Array
(
[foo] => foo
)
Источники:
- 2 - www.php.net
- 3 - php.net