我需要帮助理解以下php代码。
$this->_PageHeader = new PAGE_HEADER($this);
我想了解PAGE_HEADER($ this)中$ this参数的功能。
我知道$ this在类中用于引用属性和方法,但在这种情况下,将通过此参数传递什么值。
答案 0 :(得分:1)
$this
包含您所在类的当前实例。这意味着您将包含代码$this->_PageHeader = new PAGE_HEADER($this);
的类的当前对象传递给类PAGE_HEADER
的构造函数
例如:
class A
{
public $value = 1;
public function execute()
{
$b = new B($this);
}
}
class B
{
public $value = 2;
public function __construct(A $dep)
{
echo $dep->value; // 3
echo $this->value; // 2
}
}
$a = new A();
$a->value = 3;
$a->execute(); // In this execution, $this is the object $a.
此代码将输出32。