下面的课程工作正常,试图学习 MVC,我只想知道为什么。这可能很简单,但我无法理解。
所以在控制器类中我已经启动了 View 对象(在其他地方定义)并分配给 $this->view。现在为什么这没有给我任何错误,因为我没有在控制器类的任何地方定义视图属性,它也没有扩展。
与错误类相同。为什么 $this->view->msg 工作正常,因为 msg 属性没有在父级和错误控制器本身的任何地方定义。
这些是如何在运行中工作的。
<?php
class Controller {
function __construct() {
echo 'main controller <br/>';
$this->view = new View();
}
}
?>
扩展控制器的错误类
<?php
class Error extends Controller {
function __construct() {
parent::__construct();
echo 'This is error mate';
$this->view->msg = 'This page does not exit by msg';
$this->view->render('error/index');
}
}
?>