2016-04-22 2 views

ответ

1

Этот класс использует php ReflectionClass внутренне. Вы можете сделать так:

$reflection = \Zend\Server\Reflection::reflectClass($className); 
$properties = $reflection->getProperties(); 
$propertyNames = array(); 
foreach($properties as $property){ 
    if($property->isPrivate()){ 
     $propertyNames[] = $property->getName(); 
    } 
} 
var_dump($propertyNames); 

Я тестировал в ZF2 версии 2.5.1 и там работает ...

+0

я должен был поставить этот ReflectionProperty флаг :: IS_PRIVATE в GetProperties И $ проп> setAccessible (true); $ prop-> getValue ($ obj)); $ prop-> setAccessible (false); и установить как общедоступный доступ к значению. Но ваше решение сработало, не могли бы вы его отредактировать –

+0

@ChristopheDebove Я тестировал еще раз, и он работает без дополнительного кода для меня. Вместо этого я добавил номер версии, поэтому ваш комментарий должен быть достаточным, чтобы помочь другим людям, если он не работает для них. – Wilt

+0

отлично! спасибо Уилт –

Смежные вопросы