thinkphp路由重定义简化url访问地址
来源:互联网 发布:淘宝怎么定时上架软件 编辑:程序博客网 时间:2024/05/14 18:05
如果按照正常访问的话,则需要输入一长串的url地址,这样会显得十分冗长,我可以可以通过对路由规则的重新定义简化url访问地址。
<?phpnamespace app\index\controller;class Index{ public function index(){ return '我是index'; } public function hello($name='World'){ return 'Hello'.$name.'!'; }}?
本来的访问路径应该是:localhost/tp/index.php/index/index/hello
我们在路由定义文件(application/route.php
)里面添加一些路由规则,如下:
return [ // 添加路由规则 路由到 index控制器的hello操作方法' hello/:name' => 'index/index/hello',];
这是以hello开头的并且带参数的访问都会路由到index
控制器的hello
操作方法。此时路径可以写为:
localhost/tp/hello/Thinkphp
此时输出结果为:HelloThinkphp!改变路由规则后若使用原来的路径访问方法后,则会出现错误。
但此时有一个问题是,如果访问地址为:
localhost/tp/hello
话,会抛出 模板不存在的错误,因为在访问时,没有传参,而在定义路由规则时,则带有参数。解决办法是在修改路由规则为:
return [ // 添加路由规则 路由到 index控制器的hello操作方法' hello/[:name'] => 'index/index/hello',];
使用[]
把路由规则中的变量包起来,就表示该变量为可选,接下来就可以正常访问了。当name
参数没有传入值的时候,hello
方法的name
参数有默认值World
,所以输出的内容为 Hello,World!
application/route.php
)的开头直接添加下面的方法:use think\Route;Route::rule('hello/:name', 'index/hello');
完成的效果和使用配置方式定义是一样的。
无论是配置方式还是通过Route类的方法定义路由,都统一放到路由配置文件application/route.php
文件中
0 0
- thinkphp路由重定义简化url访问地址
- ThinkPHP框架中简化URL地址
- apache ➕ ThinkPHP 简化访问地址
- Thinkphp简化地址 重定向 隐藏入口文件
- ThinkPHP的URL路由
- Thinkphp url路由配置
- ThinkPHP URL路由解析
- thinkphp 配置URL路由
- ThinkPHP URL 路由功能
- ThinkPHP URL路由解析
- js URL 地址路由
- ThinkPHP URL访问模式
- 【php:thinkphp 】URL重定向
- ThinkPHP--url地址大小写问题
- thinkPHP地址URL跳转问题
- nginx 配置web 虚拟目录 并且codeIgniter,thinkphp 重定向url 地址
- ThinkPHP的URL访问模式
- 【Thinkphp教程】URL路由功能解析
- Qt 第二章:调用退出
- Linux下搭建BT服务器
- spring MVC注解模式的经典实现
- C++动态链接库(一)
- zabbix监控nginx性能状态
- thinkphp路由重定义简化url访问地址
- 58到家数据库30条军规解读
- 延时函数sleep和delay的区别
- 名企招聘:2016美团研发工程师笔试题
- python eval函数,将列表样式的字符串转化为列表
- F - Auxiliary Set HDU - 5927
- D. Artsem and Saunders----数学思维
- http如何像tcp一样实时的收消息?
- 什么叫回调函数