DTapi教程:11.访问控制器
访问控制器
简单来说就是怎么通过destoon网站的url来访问控制器,高大上的说就是路由。
比如:我们现在有一个控制器位于 DTapi/app/dtapi.com/ceshi/controller/user.php
- 第一步:先在destoon对应的目录下建一个入口文件,比如我的插件是要在会员中使用的,那么在destoon程序根目录下的 meber目录新建一个 ceshi.php
里面写:
'dtapi.com', //作者目录 'name' => 'ceshi', //应用目录 'codeigniter' => 'user' //控制器 ]; require '../DTapi/start.php';
这时候我们打开https://www.dtapi.com/member/ceshi.php就会访问到user.php里面的index() 方法中的内容了。
这是最基本的使用方法,但是有一点不好就是ceshi.php这个入口文件,我只能访问ceshi应用的user.php控制器,要访问其它控制器那么我们就得再加一个入口文件,这样体验就不好了,作为一个独立的插件我们最好是做到只有一个入口文件。
那么我们改造一下,删除控制器的绑定:
'dtapi.com', //作者目录 'name' => 'ceshi', //应用目录 ]; require '../DTapi/start.php';
上面我们删除了 'codeigniter' => 'user' //控制器 这一行。
再访问https://www.dtapi.com/member/ceshi.php,发现我们访问到的是index控制中index()方法的内容,这是因为我们url没有传控制器名称,所以默认访问index控制器。如果想访问其它控制器,只需要在url带上m参数即可;
例:https://www.dtapi.com/member/ceshi.php?m=user
这样就访问到user控制器了。
访问控制器的指定方法
通过上面的例子我们学会怎么访问控制器了,可有没有发现访问的都是每个控制器中的index()方法,我们一个控制器肯定不一只一个方法,不用担心,这都不是事。
访问其它方法我们只需要再带一个ac参数就行了
例:https://www.dtapi.com/member/ceshi.php?m=user&ac=edit
这样就能访问user控制器中的edit()方法。
##提醒
简单吧,DTapi没有复杂的路由设置,一切都是为了简化destoon插件而生的,所以根本不存在一个完整php框架那么复杂的路由机制。