ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
## beforeAction项目一开始加载先访问这个方法 ![](https://img.kancloud.cn/09/f6/09f66369685d89c8d6e78e77c638fc07_672x298.png) ## 语法: 先继承controller use think\Controller; class Index extends controller { } ## protected $beforeActionList=[] ## '自定义名称', //所有方法访问都先进入自定义名称方法 ## '自定义名称'=>['only'=>'index'], //只有index方法访问才可以进自定义名称方法 ## '自定义名称'=>['except'=>'index'] //排除index,其他方法访问可以访问到自定义名称 ![](https://img.kancloud.cn/cf/55/cf55f09f25f8d35c39250b7d381a8123_845x534.png) ## 语法应用 ``` protected $beforeActionList = [ 'allAction', //所有方法访问都先进入allAction方法 'onlyAction'=>['only'=>'index'], //只有index方法访问才可以进onlyActionfn方法 'exceptAction'=>['except'=>'index'] //排除index,其他方法访问可以访问到exceptAction ]; // 以下方法名称必须对于以上属性名称 public function allAction(){ dump(' 输出 allAction'); } public function onlyAction(){ dump('输出 onlyAction'); } public function exceptAction(){ dump("输出 exceptAction"); } ``` ![](https://img.kancloud.cn/64/20/6420f57c0769138d02be8893bcf30157_577x585.png) 代码案例: ``` <?php namespace app\index\controller; use think\Controller; class Index extends controller { protected $beforeActionList = [ 'allAction', //所有方法访问都先进入allAction方法 'onlyAction'=>['only'=>'index'], //只有index方法访问才可以进onlyActionfn方法 'exceptAction'=>['except'=>'index'] //排除index,其他方法访问可以访问到exceptAction ]; public function index(){ dump( "输出 index"); } public function allAction(){ dump(' 输出 allAction'); } public function onlyAction(){ dump('输出 onlyAction'); } public function text1(){ dump("输出 text1"); } public function exceptAction(){ dump("输出 exceptAction"); } } ```