在 Yii2 的视图中,如何访问其控制器的方法和属性

Yii2 的视图获取和访问的方式是通过 $this->context 属性来实现。前提是被拉取的属性和方法是公用的,因为 context 属性本身就是一个对象。

下面举几个例子来说明。


在视图中使用如下表达式 $this->context 可获取到控制器 ID,如以下代码。

控制器的ID是:<?= $this->context->id ?>


输出控制器中已经存在的字符串公用属性 mydata。

显示属性mydata:<?= $this->context->mydata ?>


执行控制器中的公用方法 myfoo。

<?php $this->context->myfoo($var1, $var2); ?>


在模板文件中渲染控制器的公用属性和方法可以采用以上的方式,比起使用挂件的方式更为直观。
感兴趣的歪友赶紧试试吧!


2