получение списка констант дочернего класса от родительского в PHP - PullRequest
1 голос
/ 29 октября 2011

так что предположим, у меня есть

class B extends A{}

и B содержит целую кучу констант класса

Есть ли способ определить статическую функцию в A, которая бы извлекала все константы класса в вызывающем дочернем классе?

Так, например, есть способ определить статическую функцию getChildConstants() в A

так, что если вы вызовете B::getChildConstants() (B может получить доступ к этой функции, так как B расширяет A), эта функция вернет все константы класса в B. Более того, эта функция должна быть определена только в A. то есть я не хочу переопределять getChildCosntants () в B.

Это сделано для того, чтобы для любого класса, расширяющего A, я мог легко получить константы такого класса без необходимости переопределять / переписывать / копировать и вставлять getChildConstants () в выбранные дочерние классы снова и снова

поэтому я хочу, чтобы универсальная функция извлечения констант в A была такой, чтобы для любого класса, расширяющего A, я могла получить константы класса такого класса, просто вызывая эту функцию извлечения универсальных констант, которая была определена в A

Я должен повторить, что функция getChildConstant () должна быть статической

1 Ответ

1 голос
/ 29 октября 2011

Вам не нужно определять функцию для этого. Вы можете использовать отражение непосредственно на дочерних классах.

$reflector = new ReflectionClass('B');
var_dump($reflector->getConstants());

Это удовлетворит ваши потребности?

получить все константы класса

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...