举个例子:
class Container {
public $text;
public $variable2;
}
class Text {
public $other_variable;
}
如何在不使用Text
方法的情况下将Container::$variable
实例分配给__construct
?
最后我想要这个效果:
$class = new Container();
$class->text->other_variable;
如果我尝试以下操作,PHP会给我一个错误:
class Container {
public $variable = new Text();
public $variable2;
}
答案 0 :(得分:4)
这是不可能的。你必须在某处构造一个new Text
,这在定义类时(即你尝试这样做的地方)不能完成,因为类值只能用静态值而不是表达式初始化。您必须在构造函数中执行此操作。