thinkphp 路径

TP中有不少路径的便捷使用方法,比如[color=red]模板中使用[/color]的__URL__,__ACTION__等,如果你对这些路径不是很明白,用起来说不定就会有这样或那样的问题,抑或出了错也不知道怎么改,现在我们看一下这些路径到底是代表了什么吧!

假如你项目首页的URL是:www.test.com/other/Form
假如当前[color=red]模块[/color]是:Index
假如当前[color=red]操作[/color]是:index

那么首页完整的URL:http://www.test.com/other/Form/index.php/Index/index
[b][color=green]__ROOT__[/color][/b]:/other/thinkphp/mydemo
[color=green][b]__SELF__[/b][/color]:/other/thinkphp/mydemo/Form/index.php
[color=green][b]__ACTION__[/b][/color]: /other/thinkphp/mydemo/Form/index.php/Index/index
[color=green][b]__URL__[/b][/color]: /other/thinkphp/mydemo/Form/index.php/Index
[color=green][b]__APP__[/b][/color]: /other/thinkphp/mydemo/Form/index.php
[b][color=green]__PUBLIC__[/color][/b]:/other/thinkphp/mydemo/Public
../public(不区分大小写):/other/thinkphp/mydemo/Form/Tpl/default/Public
[color=green][b]APP_PUBLIC_URL[/b][/color]:/other/thinkphp/mydemo/Form/Tpl/default/Public
[color=green][b]WEB_PUBLIC_URL[/b][/color]:/other/thinkphp/mydemo/Public

模板中对路径部分的操作是这样子的:


//项目公共目录
$tmplContent = str_ireplace('../public',APP_PUBLIC_URL,$tmplContent);
//网站公共目录
$tmplContent = str_replace('__PUBLIC__',WEB_PUBLIC_URL,$tmplContent);
//网站根目录
$tmplContent = str_replace('__ROOT__',__ROOT__,$tmplContent);
//当前项目地址
$tmplContent = str_replace('__APP__',__APP__,$tmplContent);
//当前模块地址
$tmplContent = str_replace('__URL__',__URL__,$tmplContent);
### ThinkPHP 框架中的路径配置 在ThinkPHP框架中,路径配置对于应用程序的正常运行至关重要。当涉及到URL重写和默认路由设置时,Nginx服务器的配置同样扮演着重要角色。 #### Nginx URL 跳转配置 针对Nginx服务器上的URL跳转配置如下所示: ```nginx location / { if (!-e $request_filename) { rewrite ^/(.*)$ /index.php/Guanwang/$1 last; break; } } ``` 这段配置意味着如果请求的文件不存在,则会将所有请求重定向到`/index.php/Guanwang/`后面加上原始请求路径[^4]。 #### 默认路由设定 除了Web服务器级别的路径调整外,在应用内部也可以定义默认路由规则。这通常是在入口文件或者特定控制器内完成。例如,可以指定某个模块作为首页加载的目标,从而影响整个站点的基础访问路径[^3]。 #### 控制器与视图关联 考虑一个简单的场景,其中`IndexController`类下的`index()`方法用于响应主页请求,并通过调用`$this->fetch('index')`来呈现位于`application/index/view/index.html`的模板页面。这种映射关系展示了如何利用约定俗成的方式组织项目结构并实现功能定位。 #### 数据库交互及模型作用域 尽管这不是直接关于路径配置的内容,但是了解模型的作用有助于理解整体架构设计思路。模型主要用于处理业务逻辑层面的任务,特别是涉及数据库操作的部分。借助内置的ORM特性,开发者能够更加便捷高效地管理实体对象及其持久化过程[^5]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值