我的问题标题可能是逻辑错误的,因为我不知道该怎么解释呢:)如何通过从字符串创建一个类来传递参数给类
这里有例子我需要什么。我有Master Class和另外两个班级,这些班级都是由这个班级创建的。这两个类有带参数的构造函数,我不知道如何传递这个参数。
class Master {
function __construct() {
$this->setup_settings();
$this->load_classes();
}
public function setup_settings() {
$this->settings['classes'] = array('Class_A', 'Class_B');
}
public function load_classes() {
foreach($this->settings['classes'] as $class) {
new $class; //Here are problem!
}
}
}
class Class_A {
function __construct($setiings) {
$this->settings = $settings;
}
}
class Class_B {
function __construct($setiings) {
$this->settings = $settings;
}
}
在这种情况下,我有一个错误:
Warning: Missing argument 1 for Class_A ::__construct()
我理解为什么它是。但是如何以这种方式将参数传递给这个类(当类名在数组中时)?当我创建字符串并传递它时,我有一个错误:类不能转换为字符串。
'新的$类( '一些参数');'? – Crozin
是的,你是对的。简单的回答为我的愚蠢问题:)我认为这是不可能的传递参数。尝试了更多其他......谢谢 – Alexander