Переопределить или добавить любой метод класса в PHP без runkit и т.п. расширений
- Как без изменения исходного кода переопределить метод в PHP стандартными средствами? Реально?
Короче что-то типа микшенов. Динамически изменяем класс (не созданный объект).
- можно ли навесить на new SomeClass() какойто обработчик чтобы дополнительно менять состояние объекта ( инициализировать свойства)
- В трейтах мы задаем статически: use Pprint;
А есть ли другой способ чтобы типа: add_trait('SomeClass', 'TraitName') ?
UPD:
пока видел способы:
- отлов до загрузки кода класса и модификация потом eval
- отлов до загрузки кода класса и модификация в какойто временный файл и include (как я понял Go AOP использует этот принцип только файлы в стримах а не реальные?)
Короче что-то типа микшенов. Динамически изменяем класс (не созданный объект).
- можно ли навесить на new SomeClass() какойто обработчик чтобы дополнительно менять состояние объекта ( инициализировать свойства)
- В трейтах мы задаем статически: use Pprint;
А есть ли другой способ чтобы типа: add_trait('SomeClass', 'TraitName') ?
UPD:
пока видел способы:
- отлов до загрузки кода класса и модификация потом eval
- отлов до загрузки кода класса и модификация в какойто временный файл и include (как я понял Go AOP использует этот принцип только файлы в стримах а не реальные?)
