【发布时间】:2011-12-01 09:55:14
【问题描述】:
可能重复:
Is there a call_user_func() equivalent to create a new class instance?
我这样实例化我的类:
$className = 'varClassName';
$validator = new $className;
但我想将一个数组作为参数传递给类构造函数。我认为以下方法可能有效:
$className = 'varClassName(array('min'=>2, 'max'=50))';
$validator = new $className;
但是,这会导致无法找到该类的错误。那么如何在使用变量类名的同时将 args 传递给类构造函数呢?
【问题讨论】:
-
如果没有 eval(),这是不可能的。你为什么需要它?有设计缺陷的味道
-
没有
eval()也是可能的。见下文。但我同意这清楚地表明了设计缺陷。还有一个重要的。
标签: php parameters constructor