Как создать или определить класс в PHP во время выполнения и определить его атрибуты и функции? Является ли это возможным?
Вы могли бы , использовать, использовать eval
.
Но, пожалуйста, не надо!
Мета-программирование не является чем-то особенным для PHP, поэтому вы должны попытаться решить свою проблему, не создавая классы во время выполнения.
вы можете создать общий расширяемый класс и использовать магические методы __set () и __get () для динамического добавления свойств. нет методов, извините.
Нет.
Однако вы можете динамически добавлять свойства к конкретным экземплярам.
Говоря, что eval
разрешает это, как говорить на Java, вы можете, проблематично, написать исходный файл, скомпилировать его и загрузить (или, если на то пошло в PHP, вы можете его включить). Конечно, это возможно, но на самом деле это не часть языка.
в основном
class A { function B() {...} }
все в php определено во время выполнения, поэтому с этим все должно быть хорошо. Вы также можете попробовать
include 'some.class.php';
«включить» – это то же самое, что и «eval», но как-то имеет лучший образ.