Я хотел бы динамически создать объект PHP, и параметры были бы необязательными.PHP, передающий параметры при создании нового объекта, call_user_func_array для объектов
Например, вместо того, чтобы делать это:
$test = new Obj($param);
Я хотел бы сделать что-то вроде этого (создать новую Обь вымышленный):
$test = create_new_obj('Obj', $param);
Есть ли такая функция в PHP? Нечто похожее на call_user_func_array, но вместо объекта.
, чтобы уточнить немного, имя класса является переменным (оно изменяется), а параметр $ param зависит от загружаемого класса. Иногда нет никакого параметра. Это в основном динамическая загрузка из разных классов в зависимости от ситуации. – Patrick
Я думаю, что мой ответ ниже по-прежнему соответствует законопроекту из того, что вы описываете (имена переменных классов, необязательные параметры построения). Нет причин, по которым вы не можете передать null '$ param' в конструктор для класса, который ему не нужен. Если, с другой стороны, вы говорите, что тип создаваемого объекта на самом деле * зависит от '$ param' *, тогда вы захотите изучить что-то вроде Factory Pattern: http: //en.wikipedia .org/вики/Factory_method_pattern. PHP не может обрабатывать ваши решения о строительстве для вас в этом случае ... вам нужно написать логику, чтобы решить, что будет построено. – zombat