模板文件和layout文件中的$this我知道是/yii/web/view的实例的意思,但是不清楚$this怎么传到view中的

· bruceliu3385 · 于 5年前 发布 · 1946 次阅读

模板文件和layout文件中的$this我知道是/yii/web/view的实例的意思,但是不清楚$this怎么传到view中的

共收到 5 条回复
Terry#15年前 0 个赞

这是Yii2的知识,自己去看Yii2源码琢磨。

多谢指点:+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

Terry#55年前 0 个赞

@bruceliu3385 #4楼 理清了就好,把内容排版弄弄:http://www.fecshop.com/markdown

添加回复 (需要登录)
需要 登录 后方可回复, 如果你还没有账号请点击这里 注册
Your Site Analytics