牛骨文教育服务平台(让学习变的简单)
博文笔记

在Yii2.0版本中中,如何从控制器里面传递变量到布局文件layouts里的模板中

创建时间:2015-05-11 投稿人: 浏览次数:157
关于在Yii1.x的版本中变量的传递可以查看这个:在Yii框架中,控制器如何传递变量给layouts里的模板,下面说说在Yii2.0中的实现方法。

在Yii2.0中,view模板文件里面的$this已经不是对应的控制器对象了,而是View对象的变量。我们可以通过View对象中的params变量来传递数据。

先获取当前View,然后给view设置参数,

class SiteController extends Controller
{
        

        public function actionIndex()
        {
                //设置当前view的params参数,
                $view = Yii::$app->view;
                $view->params["layoutData"]="test";
                
                return $this->render("index");
        }
}
在layouts/main.php


view里面的$this由控制器对象变为View对象是其中的一个大改变,这样整个框架也更清晰了。

声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。