Yii2 controller 传值给layout【纯分享非原创】

博客 · 本文由 · 谁偷了汝的凶兆 · 发布于 22天前 · 203 阅读

在控制器中这样写:

$this->view->params['customParam'] = 'customValue';

在视图中这样调用:

/* @var $this yii\web\View */

echo $this->params['customParam'];

第二种,在layout直接访问Controller的成员属性

首先在Controller中定义一个公共的成员属性,用来放要传递的值

class site extends Controller{

    public $layout_data;

    function actionIndex{

        $this->layout_data = '传给layout的值';

        return  $this->render('index');
    }

}

其次在layout中访问:

$this->context->layout_data//这样既可获得SiteController中的值,ps属性必须为pub

成为第一个本话题的爱慕者吧

评论数量:4

我们都是代码的搬运工,搬运有用的代码传递给新人就是本站的价值所在,加油!

22天前 回复

@ITer 嗯 您说得没错 其实也顺便作为笔记存放 mark mark

22天前 回复

@加班中途去撩妹 传给layout的值

16天前 回复

@谁偷了汝的凶兆 抱歉,之前看你的代码治好了我多年的近视

12天前 回复