序言
yii\web\Controller类是比较常用的类,Yii2的前后台控制器都是继承了这个类。关于yii\web\Controller类的说明,其实Yii2的文档上也有,我为什么还要写这篇文章呢?可能会有很多人疑惑...。我是这么认为的,Yii2的文档是有没有错,但是那毕竟是针对大众的,而且里边没有任何一个实例,让人看着还是比较费劲的,要是有人能够解读每一个类,然后放出具体的例子,是不是看着就舒服多了?理解得也快些?
需求分析
解析yii\web\Controller类,了解其类中的方法和属性及其使用。
代码分析
它的继承顺序:`yii\web\Controller ? yii\base\Controller ? yii\base\Component ? yii\base\Object
`
实现的接口:yii\base\ViewContextInterface
它的子类:yii\rest\ActiveController, yii\rest\Controller
以WeelySummaryController控制器为例测试,以下是我调用其父类比较常用的方法或属性得到的结果,现分享给大家:
1、$this->id //获取该控制器的名称字符串(控制器id)
如:weely-summary
2、$this->getViewPath() 或者 $this->viewPath
//获取当前视图路径,具体到所在文件夹名称。
如:D:\phpStudy\WWW\hand\backend\views\weely-summary
3、$this->action->id //获取当前视图名称
如:index //列表页
4、$this->action->actionMethod //获取当前方法名
如:actionIndex
5、$this->actionParams //绑定当前操作的参数
如:Array ( [id] => 3 )
6、$this->route //获取当前请求的路由,得到控制器id和视图id
如:weely-summary/index
相关资料
Yii2 的文档:http://www.yiichina.com/doc/api/2.0/yii-web-controller
以上就介绍了yii\web\Controller类的剖析,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。