您的位置:首页 > 编程语言 > PHP开发

thinkphp 路径 (纯转)

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

假如你项目首页的URL是:www.test.com/other/Form

假如当前模块是:Index

假如当前操作是:index

那么首页完整的URL:http://www.test.com/other/Form/index.php/Index/index

__ROOT__:/other/thinkphp/mydemo

__SELF__:/other/thinkphp/mydemo/Form/index.php

__ACTION__: /other/thinkphp/mydemo/Form/index.php/Index/index

__URL__: /other/thinkphp/mydemo/Form/index.php/Index

__APP__: /other/thinkphp/mydemo/Form/index.php

__PUBLIC__:/other/thinkphp/mydemo/Public

../public(不区分大小写):/other/thinkphp/mydemo/Form/Tpl/default/Public

APP_PUBLIC_URL:/other/thinkphp/mydemo/Form/Tpl/default/Public

WEB_PUBLIC_URL:/other/thinkphp/mydemo/Public

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

PHP代码

//项目公共目录  

         $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);  

         //当前项目操作地址  

   $tmplContent = str_replace('__ACTION__',__ACTION__,$tmplContent);  

         //当前页面操作地址  

   $tmplContent = str_replace
a6d2
('__SELF__',__SELF__,$tmplContent); 

1、路径问题

我的TP心得:“路径问题,是个大问题!”

针对THINKPHP2.0,我发现以下名称和对应的路径为:

假如你项目首页的URL是:http://<servername>/openexam/

假如当前模块是:Index

假如当前操作是:index

那么首页完整的URL:http://<servername>/openexam/index.php/Index/index

__ROOT__:http://<servername>/openexam/

__SELF__:http://<servername>/openexam/index.php

__ACT

ION__: http://<servername>/openexam/index.php/Index/index
__URL__: http://<servername>/openexam/index.php/Index
__APP__: http://<servername>/openexam/index.php
APP_PUBLIC_URL:http://<servername>/openexam/Tpl/default/Public

注 意:以上缩写仅适用于模板中使用,如在php中则使用U方法做URL路由来实现

有很多人在THINKPHP下使用jQuery框架,但不 知如何加入。

我发现,多数问题都是路径问题。

我的项目架构是:http://localhost/openexam/

在 C:\xampp\htdocs\Openexam\下放着一个名为script的文件夹,里面是jquery-1.4.1.js。

所以,在 C:\xampp\htdocs\Openexam\Tpl\default\Index\studentLogin.html中,使用:

<html>

<head>

<meta http-equiv="Content"

<title>{$title}</title>
<script src="__ROOT__/Openexam/script/jquery-1.4.1.js" type="text/javascript"></script>

<script type="text/javascript">

$(document).ready(

function(){

alert("ok");

}

)

</script>

</head>

<body>

<form method="POST" action="">

Openexam欢迎您,请您登录:<br>

......

</body>

</html>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  ThinkPHP