快速入门(十七):操作绑定到类

快速入门(十七):操作绑定到类
如果你的应用规模比较大,每个操作方法彼此相对独立,那么就可以尝试下操作绑定到类的功能。
定义
系统提供了把每个操作方法定位到一个类的功能,可以让你的开发工作更细化,可以设置参
数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
控制器类的定义如下:
ThinkPHP3.2.3快速入门
本文档使用 看云 构建 - 98 -
namespace Home\Controller\Index;
use Think\Controller;
class index extends Controller{
public function run(){
echo '执行Index控制器的index操作';
}
}
现在,我们调用的其实是 Home\Controller\Index\index 类的run方法。
注意:操作方法类的命名空间比之前要多了一个控制器名称,这个地方很容易忽略。
run方法依旧可以支持传入参数和进行Action参数绑定操作。
namespace Home\Controller\Index;
use Think\Controller;
class index extends Controller{
public function run($name=''){
echo 'Hello,'.$name.'!';
}
}
我们访问
http://serverName/Home/Index/index/name/thinkphp
可以看到输出结果为:
Hello,thinkphp!

 

posted @ 2017-12-18 10:59  sky20080101  阅读(100)  评论(0)    收藏  举报