网站 提示危险,设计吧,wordpress some chinese please,垂直网站做益智类问答## 定义ThinkPHP3.2版本提供了把每个操作方法定位到一个类的功能#xff0c;可以让你的开发工作更细化#xff0c;可以设置参数**ACTION_BIND_CLASS**#xff0c;例如#xff1a;~~~ACTION_BIND_CLASS True,~~~设置后#xff0c;我们的控制器定义有所改变#xff0c…## 定义ThinkPHP3.2版本提供了把每个操作方法定位到一个类的功能可以让你的开发工作更细化可以设置参数**ACTION_BIND_CLASS**例如~~~ACTION_BIND_CLASS True,~~~设置后我们的控制器定义有所改变以URL访问为 http://serverName/Home/Index/index为例原来的控制器文件定义位置为~~~Application/Home/Controller/IndexController.class.php~~~控制器类的定义如下~~~namespace Home\Controller;use Think\Controller;class IndexController extends Controller{public function index(){echo 执行Index控制器的index操作;}}~~~可以看到实际上我们调用的是 Home\Controller\IndexController 类的**index**方法。设置后控制器文件位置改为~~~Application/Home/Controller/Index/index.class.php~~~控制器类的定义如下~~~namespace Home\Controller\Index;use Think\Controller;class index extends Controller{public function run(){echo 执行Index控制器的index操作;}}~~~现在我们调用的其实是 Home\Controller\Index\index 类的**run**方法。 run方法依旧可以支持传入参数和进行Action参数绑定操作但不再支持A方法实例化和R方法远程调用我们建议R方法不要进行当前访问控制器的远程调用。## 前置和后置操作当设置操作方法绑定到类后前置和后置操作的定义有所改变只需要在类里面定义_before_run和_after_run方法即可例如~~~namespace Home\Controller\Index;use Think\Controller;class index extends Controller{public function _before_run(){echo before_.ACTION_NAME;}public function run(){echo 执行Index控制器的index操作;}public function _after_run(){echo after_.ACTION_NAME;}}~~~## 空控制器操作方法绑定到类后一样可以支持空控制器我们可以创建 Application/Home/Controller/_empty目录即表示如果找不到当前的控制器的话会到_empty控制器目录下面定位操作方法。例如我们访问了URL地址 http://serverName/Home/Test/index,但并不存在 Application/Home/Controller/Test目录但是有定义 Application/Home/Controller/_empty目录。并且我们有定义~~~Application/Home/Controller/_empty/index.class.php~~~控制器定义如下~~~namespace Home\Controller\_empty;use Think\Controller;class index extends Controller{public function run(){echo 执行CONTROLLER_NAME.控制器的.ACTION_NAME.操作;}}~~~访问http://serverName/Home/Test/index后 输出结果显示~~~执行Test控制器的index操作~~~## 空操作操作绑定到类后我们依然可以实现空操作方法我们只要定义一个 Home\Controller\Index\_empty类就可以支持Index控制器的空操作访问例如 控制器定义如下~~~namespace Home\Controller\Index;use Think\Controller;class _empty extends Controller{public function run(){echo 执行Index控制器的.ACTION_NAME.操作;}}~~~当我们访问http://serverName/Home/Index/test后 输出结果显示~~~执行Index控制器的test操作~~~