tthinkphp之PATH_INFO URL路径解析

本文介绍了ThinkPHP5中PATH_INFO URL路径格式,如http://localhost/tp5/public/index.php/index/index/index,并指出其可能存在的问题,如路径过长,暴露服务器文件结构等。为了解决这些问题,文章提到了ThinkPHP5的兼容模式以及如何通过Route.php进行自定义路由,以实现更灵活且语义化的URL设计,包括设置路由规则、请求类型、路由参数等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

thinkphp URL 路径格式

      http://serverName/index.php/module/controller/action/[param/value...]

      http://localhost/tp5/public/index.php/index/index/index

      [对于某些环境不支持]

兼容模式

http://serverName/index.php?s=module/controller/action/p/v...

缺点

  •  太长
  • URL路径暴露出服务器文件结构
  • 不够灵活
  • 不能很好的支持URL语义化(最大缺陷)

tp5自定义路由  Route.php

      路由模式

           Route::rule('路由表达式','路由地址','请求类型','路由参数(数组)','变量规则(数组)')

          请求类型

类型描述快捷方法
GETGET请求get
POSTPOST请求post
PUTPUT请求put
DELETEDELETE请求delete
PATCHPATCH请求patch
*任何请求类型any

          路由参数

           

参数说明方法名
method请求类型检测,支持多个请求类型method
extURL后缀检测,支持匹配多个后缀ext
deny_extURL禁止后缀检测,支持匹配多个后缀denyExt
https检测是否https请求https
domain域名检测domain
before前置行为(检测)before
after后置行为(执行)after
merge_extra_vars合并额外参数mergeExtraVars
complete_match是否完整匹配路由completeMatch
model绑定模型model
cache请求缓存cache
param_depr路由参数分隔符depr
ajaxAjax检测ajax
pjaxPjax检测pjax
response绑定response_send行为response
validate绑定验证器类进行数据验证validate
header设置Response的header信息header
append追加额外的参数(5.1.5+append
middleware注册路由中间件(5.1.6+middleware
merge_rule_regex合并路由规则(V5.1.6+mergeRuleRegex
filter请求变量过滤(V5.1.16+filter

      

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值