controller向layout传值
Yii2,layout中使用Controller的值,Controller向layout传值的两种方式。
yii2中在通过Controller向layout中传值,layout中访问Controller中的值,
1、第一种,通过layout变量数组赋值
1 2 | $view = Yii::$app->view;$view->params['layout_data'] = '传给layout的值'; |
2、第二种,在layout直接访问Controller的成员属性
首先在Controller中定义一个公共的成员属性,用来放要传递的值
1 2 3 4 5 6 7 8 9 10 11 12 | class site extends Controller{ public $layout_data; function actionIndex{ $this->layout_data = '传给layout的值'; return $this->render('index'); } } |
其次在layout中访问:
1 | $this->context->layout_data//这样既可获得SiteController中的值,ps属性必须为public |
浙公网安备 33010602011771号