thinkphp6路由配置

2021/10/28 20:40:59

本文主要是介绍thinkphp6路由配置,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

之前将域名中index.php路径给隐藏掉了,因为index控制器和index方法都是tp6默认访问的,所以在输入localhost/admin也可以直接访问到index控制器里面的index方法,但是实际的访问路径应该是http://localhost/admin/index/index

当访问新定义的hello方法时,却一样需要把全部路径才可以访问,直接输入localhost/admin/hello是会报错,提示控制器不存在,只能通过全部路径localhost/admin/index/hello才可以访问,那路径的显露程序太大了,也不优雅;而且在多应用模式下,所有的访问路径都必须带应用名称,真的很不好。这个时候就可以通过路由设置来简化访问路径

1.路由基本知识

1.1 常用于项目中的路由分为五种:get/post/put/delete/any

Route::get('new/<id>','News/read'); // 定义GET请求路由规则,常用于获取数据库数据
Route::post('new/<id>','News/update'); // 定义POST请求路由规则,常用于前端数据提交
Route::put('new/:id','News/update'); // 定义PUT请求路由规则
Route::delete('new/:id','News/delete'); // 定义DELETE请求路由规则
Route::any('new/:id','News/read'); // 所有请求都支持的路由规则

1.2路由变量

Route::rule('/', 'index'); // 首页访问路由
Route::rule('my', 'Member/myinfo'); // 静态地址路由
Route::rule('blog/:id', 'Blog/read'); // 静态地址和动态地址结合
Route::rule('new/:year/:month/:day', 'News/read'); // 静态地址和动态地址结合
Route::rule(':user/:blog_id', 'Blog/read'); // 全动态地址

 1.3 路由使用注意事项

①路由的使用首先要使用符合规范的命名空间,这样才能控制器才能正常访问;

②然后还要通过引用门面中的路由方法

③多应用模式下,分为应用路由和全局路由。应用内部可以创建admin/route/app.php定义应用内部路由;而根目录下route/app.php是全局路由,一般用配置默认路由,也就是用户访问路由;应用路由的执行要优先于全局路由,也就是程序会先执行应用内的路由。

④在config/route.php文件是全局路由配置,如是否设置强制路由,也就是只能通过路由访问

 // 是否强制使用路由
    'url_route_must'        => true,

1.4 创建应用内部路由,在admin应用下创建route/app.php,并加入以下代码

<?php
namespace app\admin\route;//命名空间路径
use think\facade\Route;//引用门面路由类


Route::get('/','index/index');          //内部路由定义路径时不需要加入应用路径
Route::get('hello','index/hello');

 1.5 定义全局路由,在根目录route/app.php文件中定义全局路由,主要用于前台访问

<?php
use think\facade\Route;


Route::get('/', 'web/Index/index');
Route::get('hello','web/Index/hello');

出现错误的原因是开启了强制路由,也就是没有定义过路由的都无法访问,在web应用中并没有定制,所以一样要在web应用下创建route/app.php然后定义内部路由。

<?php
namespace app\web\route;
use think\facade\Route;

Route::get('/','index/index');
Route::get('hello','Index/hello');

 但是最后我发现,如果通过localhost/hello也并不能访问web应用下index控制器中的hello方法,只能通过localhost/web/hello访问,也就是感觉全局定义的路由并没有起作用。

 

算了,慢慢学吧~ 

 

 



这篇关于thinkphp6路由配置的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程