模板文件和layout文件中的$this我知道是/yii/web/view的实例的意思,但是不清楚$this怎么传到view中的
这是Yii2的知识,自己去看Yii2源码琢磨。
yii2 页面功能块配置实现原理(前端+后端提供数据类),以及Views深度嵌套
yii2 通过 render , views页面生成显示html的原理
多谢指点:+1:
刚才过了一遍yii2的这部分源码,记录一下 controller 的action中 return $this->render($this->action->id, $data);会调用Yii::$app->view->renderFile($viewFile, $params, $this); 这里的Yii::$app->view就是\yii\web\View 是继承于\yii\base\View的 renderFile调用\yii\base\View的rendPhpFile方法。关键点在renderPhpFile方法中建立缓冲区 require $file 把模板文件内容require进来 再返回缓冲区内容。。。。这样模板$file文件里的内容相当于直接贴过来在View中。。。所以模板里的$this就是指的View
@bruceliu3385 #4楼 理清了就好,把内容排版弄弄:http://www.fecshop.com/markdown