控制器初始化:
<?php
namespace app\index\controller;
use think\Controller; //引用
//继承
class Index extends Controller
{
//_initialize()中所有的设置、参数等,会在调用所有方法前先执行
public function _initialize(){
//需要在该控制器的方法调用之前首先执行的代码
}
}
前置操作:
设定该控制器类某个或者某一类方法执行前,需要进行的操作
<?php
namespace app\index\controller;
use think\Controller;
class Index extends Controller(){
protected $beforeActionList = [
//执行sayHellow、sayBye方法前先执行func1()的代码
'func1',
//只在执行sayBye方法前,不执行func2()的代码
'func2' => ['except'=>'sayBye'],
//只有执行asyHellow方法,才执行func3()的代码
'func3' =>['only'=>'asyHellow'],
//多个方法,已逗号隔开
//'func1' => ['only'=>'sayBye,sayHellow'],
];
protected function func1(){
//操作1
}
protected function func2(){
//操作2
}
protected function func3(){
//操作3
}
public function sayHellow(){
//代码...
}
public function sayBye(){
//代码...
}
}
前置方法需要结合控制器使用