2019独角兽企业重金招聘Python工程师标准>>>

┎━ThinkPHP 框架系统目录
┃ ┝ ThinkPHP.php 系统公共文件
┃ ┝ Common 公共文件目录
┃ ┝ Tpl 框架系统模版目录
┃ ┝ Lang 系统语言包目录
┃ ┝ PlugIns 公共插件目录
┃ ┗ Lib 系统基类库目录
┃  ┝ Think 系统运行库(必须)
┃  ┝ Com 扩展类库包(非必须)
┃  ┗ ORG 扩展类库包(非必须) 

┝━App App 项目目录
┃ ┝ index.php 项目入口文件(可任意放置)
┃ ┝ Cache 模版缓存目录
┃ ┝ Common 公共文件目录(非必须)
┃ ┝ Conf 项目配置目录
┃ ┝ Data 项目数据目录
┃ ┝ Html 静态文件目录(非必须)
┃ ┝ PlugIns 插件目录(非必须)
┃ ┝ Tpl 模版文件目录
┃ ┝ Lang 语言包目录(非必须)
┃ ┝ Logs 日志文件目录
┃ ┝ Temp 数据缓存目录
┃ ┗ Lib 应用类库目录
┃  ┝ Action 控制器(模块)类目录
┃  ┝ Model Model 类文件目录
┃   … 下面的应用目录可根据需要选择和定义
┃  ┝ Exception 异常类库目录
┃  ┝ Common 公共应用类目录
┃  ┗ Help 助手类目录

┃…更多项目目录(和App 目录类似,每个项目采用独立目录,便于部署)

┝━Public 网站公共目录(多项目公用)
┃ ┝ Js JS 类库目录(建议)
┃ ┝ Images 公共图像目录(建议)
┃ ┗ Uploads 公共上传目录(建议)

ThinkPHP 框架除了模板目录和网站入口文件必须放到 WEB 目录下之外,其它所有框架的文件和目录可以单独存放,不受限制,您需要做的仅仅是在首页文件中指定ThinkPHP 框架的包含目录,我们建议您如果可能的话把 ThinkPHP 框架的目录包放到其它网站不能访问的目录下面,以保障应用的安全性。项目独立目录,方便部署和团队开发。每个项目有自身的配置文件、语言文件、插件文件和日志文件。如果在类Linux 环境下面部署,需要对以下目录设置可写权限(这些目录仅仅针对项目目录,系统目录无需设置任何可写权限,因为每个项目的模版缓存和数据缓存,以及日志文件都是独立的)。项目目录下面的 Cache(模版缓存目录)、Temp(数据缓存目录)、Conf(项目配置目录,写入权限用于自动生成配置缓存和插件缓存文件)、 Logs(日志文件目录)、如果设置了 Uploads 上传目录和 Data 数据目录的话也必须设置为可写。
另外,如果设置了 Public 目录下面的 Uploads 目录作为公共上传目录,也需要设置可写权限。通常的设置都是设置目录属性为 777。 一定要注意在 Linux 环境下面的文件大小写问题,否则会导致文件加载错误。

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代码

1.     //项目公共目录

2.             $tmplContent = str_ireplace('../public',APP_PUBLIC_URL,$tmplContent);

3.             //网站公共目录

4.             $tmplContent = str_replace('__PUBLIC__',WEB_PUBLIC_URL,$tmplContent);

5.             //网站根目录

6.             $tmplContent = str_replace('__ROOT__',__ROOT__,$tmplContent);

7.             //当前项目地址

8.             $tmplContent = str_replace('__APP__',__APP__,$tmplContent);

9.             //当前模块地址

10.         $tmplContent = str_replace('__URL__',__URL__,$tmplContent);

11.         //当前项目操作地址

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

13.         //当前页面操作地址

14.    $tmplContent = str_replace('__SELF__',__SELF__,$tmplContent);

<!----------------------------------------------------------------------------------------------------------------->

THINK_PATH // ThinkPHP 系统目录
APP_PATH // 当前项目目录
APP_NAME // 当前项目名称
MODULE_NAME //当前模块名称
ACTION_NAME // 当前操作名称
TMPL_PATH // 项目模版目录
LIB_PATH // 项目类库目录
CACHE_PATH // 项目模版缓存目录
CONFIG_PATH //项目配置文件目录
LOG_PATH // 项目日志文件目录
LANG_PATH // 项目语言文件目录
TEMP_PATH //项目临时文件目录
PLUGIN_PATH // 项目插件文件目录
VENDOR_PATH // 第三方类库目录
DATA_PATH // 项目数据文件目录
IS_APACHE // 是否属于 Apache
IS_IIS //是否属于 IIS
IS_WIN //是否属于Windows 环境
IS_LINUX //是否属于 Linux 环境
IS_FREEBSD //是否属于 FreeBsd 环境
NOW_TIME // 当前时间戳
MEMORY_LIMIT_ON // 是否有内存使用限制
OUTPUT_GZIP_ON // 是否开启输出压缩
MAGIC_QUOTES_GPC // MAGIC_QUOTES_GPC
THINK_VERSION //ThinkPHP 版本号
LANG_SET // 浏览器语言
TEMPLATE_NAME //当前模版名称
TEMPLATE_PATH //当前模版路径
__ROOT__ // 网站根目录地址
__APP__ // 当前项目(入口文件)地址
__URL__ // 当前模块地址
__ACTION__ // 当前操作地址
__SELF__ // 当前 URL 地址
TMPL_FILE_NAME //当前操作的默认模版名(含路径)
WEB_PUBLIC_URL //网站公共目录
APP_PUBLIC_URL //项目公共模版目录

模板中使用的系统常量
__ROOT__ // 网站根目录地址
__APP__ // 当前项目(入口文件)地址
__URL__ // 当前模块地址
__ACTION__ // 当前操作地址
__SELF__ // 当前 URL 地址
__PUBLIC__ // 网站公共目录
../Public(不区分大小写) // 项目公共模版目录

转载于:https://my.oschina.net/tenking/blog/40820

ThinkPHP 框架培训资料相关推荐

  1. php tp框架做选中删除,关于thinkphp框架实现删除和批量删除的分析

    这篇文章主要为大家详细介绍了thinkPHP框架实现删除和批量删除的相关资料,需要的朋友可以参考下 本文实例讲一下如何用thinkphp实现数据的删除和批量删除吧. 预期效果图: 原谅博主对照片的处理 ...

  2. php隐藏路径ngnix,thinkphp框架在nginx环境下去掉index.php路径显示

    协助用户将apache下的一个网站迁移到nginx环境中,结果发现用户用的ThinkPHP框架做的开发,默认用的pathinfo. 这是一个很头疼的问题,因为nginx不支持pathinfo,贸然一并 ...

  3. 开源php内容管理系统框架,115cms综合内容管理系统v2.2 ThinkPHP框架开发+开源内容管理系统+可自定义全局...

    115cms 综合内容管理系统是一款采用当前最流行的 ThinkPHP 框架开发的高效开源的内容管理系统.本产品完全采用模块化开发,插件主题功能,增加了程序的维护性.可扩展性,使二次开发变得简单.容易 ...

  4. ThinkPHP框架总结之配置及使用

    ThinkPHP框架总结之配置及使用: TP框架提供了灵活的全局参数变量配置功能,使用高效的返回php数组定义,支持惯例.公共.模块.调试及动态参数配置功能.下面会结合例子来介绍最常用的默认PHP数组 ...

  5. JAVA内部培训资料

    JAVA内部培训资料 一.JAVA基础培训系列 1.孙鑫JAVA高级软件工程师班培训录像(2DVD)   简介:光盘由孙鑫老师亲自授课录制.循序渐进.通俗易懂.实战性强.内容全面.讲解深刻.问答形式是 ...

  6. 招标php,基于ThinkPHP框架招投标平台架构设计.doc

    基于ThinkPHP框架招投标平台架构设计 基于ThinkPHP框架招投标平台架构设计 摘要:本文基于招投标平台的需求分析,比较了国内外流行的几种MVC框架,选择ThinkPHP框架进行架构设计,后台 ...

  7. 教学资源管理软件PHP,应用ThinkPHP框架的教学资源科研管理平台设计研究

    谢业斌 摘 要:ThinkPHP属于一种计算机领域的开发解决方案,具有一定的系统整体性,可实现应用开发过程中的各种功能优化与应用.在职业教育专业体系中,主要应用ThinkPHP框架设计搭建教学资源科研 ...

  8. 记一次ThinkPHP框架错误解决处理!

    提起Web始终不能绕过一个语言,那就是PHP,而要说到PHP的Web框架,对于php开发工程师而言,ThinkPHP和Laravel应该都是必须掌握好的框架,甚至需要熟练乃至精通一个框架! 而下面本渣 ...

  9. ASP.NET培训资料(课堂视频)(AJAX,C#,JavaScript,SQL)

    ASP.NET培训资料视频(含笔记)(AJAX,C#,JavaScript,SQL) 详细的资料 三个月的课程录像+资料笔记(花了一万六千块的培训资料超值) [19G的经典内容] 认真学习后包你能成为 ...

最新文章

  1. android中怎么网络判断,Android中判断网络是否连接实例详解
  2. C语言实现基数排序Radix sort算法之二(附完整源码)
  3. 《数据库SQL实战》获取所有非manager的员工emp_no
  4. 中相对路径与绝对路径的写法_相对路径和绝对路径?简洁易懂解释+实例
  5. 能让你开发效率翻倍的 sublime 插件配置
  6. 腾讯安全发布十大产业互联网安全议题:聚焦5G、数据加密等
  7. Ajax请求URL后加随机数原理
  8. 音视频即时通讯开发平台
  9. Excel表格输入身份证数字就变了 Excel函数公式大全 Excel表格制作
  10. bzoj 3237: [Ahoi2013]连通图 并查集+线段树分治
  11. 【Testin实验室】MoiMark安卓中国终端体验性能排行榜(11月报)
  12. 将孤独视作挑战,倾听内心,自我对话
  13. 民生银行香港卡的办理经历,和踩过的那些坑····
  14. 一山一世界,雅居乐陈卓林“乐活”美好生活,在此进阶
  15. 解决绿C(C与C++程序设计学习与实验系统 2015)软件程序中文出现乱码问题
  16. dart sass自学笔记
  17. CAD中添加A4边框、画箭头、斜线延长、添加特殊符号(矢量标记)
  18. 测试中遇到不可重现的Bug处理办法
  19. 用最便宜的方法,吃最顶级的和牛!
  20. 计算机网络安全职业资格证书,计算机网络管理员职业资格证书

热门文章

  1. VB无所不能之五:建立“标准”DLL动态链接库文件(1)
  2. spring 读取配置文件的优先级
  3. springmvc学习笔记--Interceptor机制和实践
  4. C# AppDomain
  5. 认证连接_长江连接器哪些产品通过认证?
  6. 利用commons-fileupload 上传图片(包含表单数据)
  7. JavaScript的格式--从格式做起,做最严谨的工程师
  8. Android 利用addView 动态给Activity添加View组件
  9. js实现全选和反选功能
  10. 穷举法--百钱买百鸡