今天帮群里的朋友看filter,才发现原来Yii里有这么强大的东西。废话不多说,在咱们的controller里加入自己的filter吧。
public function filters() { return array( 'accessControl', // perform access control for CRUD operations 'testFilter + list, show', ); } public function FilterTestFilter($filterChain) { echo "begin"; $filterChain->run(); echo "end"; }
怎么样,很简单吧,现在执行下你的action看看有什么结果。
filter的作用就是在action执行前和执行后执行某些操作。自定义的filter方法必须以Filter开头,名字就是filters方法里的名字。参数$filterChain就是执行该filter的action实例,调用$filterChain->run()其实就是执行该action了。