资讯专栏INFORMATION COLUMN

thinkphp中将模板文件和缓存目录分离出来

Yuqi / 1257人阅读

直接在入口文件中加两行代码定义路径即可。


// +----------------------------------------------------------------------
// 应用入口文件
// 检测PHP环境
if(version_compare(PHP_VERSION,"5.3.0","<"))  die("require PHP > 5.3.0 !");
// 开启调试模式 建议开发阶段开启 部署阶段注释或者设为false
define("APP_DEBUG",True);
// 定义应用目录
define("APP_PATH","./Application/");
// 定义缓存目录
define("RUNTIME_PATH","./Runtime/");
// 定义模板文件默认目录
define("TMPL_PATH","./tpl/");
// 引入ThinkPHP入口文件
require "./ThinkPHP/ThinkPHP.php";
// 亲^_^ 后面不需要任何代码了 就是如此简单

框架目录如下:
 thinkphp
    ├─Application 项目逻辑目录
    │  ├─Common 公共模块
    │  │  ├─Common  公共函数目录
    │  │  │  ├─functioin.php 公共函数php文件
    │  │  ├─Conf  公共配置文件目录
    │  │  │  ├─config.php  tp的配置 用于覆盖框架默认配置项
    │  │  │  ├─db.php  数据库配置 用户名 密码等
    │  │  │  ├─webconfig.php  项目的配置;网站名;是否开启网站等
    │  │  ├─Controller  公共控制器目录
    │  │  │  ├─BaseController.class.php 应用最基础的控制器
    │  │  │  ├─HomeBaseController.class.php  Home基础控制器继承BaseController
    │  │  │  ├─AdminBaseController.class.php  Admin基础控制器继承BaseController
    │  │  │  ├─UserBaseController.class.php  User基础控制器继承BaseController
    │  │  │  ├─...
    │  │  ├─Model  公共模型目录
    │  │  │  ├─BaseModel.class.php  应用最基础的Model
    │  │  │  ├─ArticleModel.class.php 文章model  继承BaseModel
    │  │  │  ├─UserModel.class.php  用户model 继承BaseModel
    │  │  │  ├─...
    │  │  ├─Tag  公共标签目录
    │  │  │  ├─My.class.php  自定义的标签库
    │  │  │  ├─...
    │  ├─Home  Home模块
    │  │  ├─Controller  Home控制器目录 继承HomeBaseController
    │  │  │  ├─ArticleController.class.php 文章控制器目录
    │  │  │  ├─IndexController.class.php  首页控制器
    │  │  │  ├─ ...
    │  ├─Admin  Admin模块
    │  │  ├─Controller  Admin控制器目录 继承AdminBaseController
    │  │  │  ├─IndexController.class.php  后台管理首页控制器
    │  │  │  ├─ ...
    │  ├─User  User模块
    │  │  ├─Controller  User控制器目录 继承UserBaseController
    │  │  │  ├─IndexController.class.php  用户个人中心首页控制器
    │  │  │  ├─ ...
    ├─Public 资源文件目录
    │  ├─install      安装引导目录
    │  ├─statics      静态资源目录
    │  │  ├─bootstrap bootstrap框架
    │  │  ├─ueditor   ueditor编辑器
    │  │  ├─js        jquery等第三方js存放的目录
    │  │  ├─css       animate.css等第三方css目录
    │  │  ├─ ...
    ├─tpl 视图文件目录
    │  ├─Public  公共目录
    │  │  ├─js  公共js目录
    │  │  │  ├─base.js 全站都引用的js文件
    │  │  │  ├─ ...
    │  │  ├─css  公共css目录
    │  │  │  ├─base.css 全站都引用的css文件
    │  │  │  ├─ ...
    │  │  ├─images 公共图片目录
    │  │  ├─public_head.html  全站通用的公共头部
    │  │  ├─public_foot.html  全站通用的公共底部
    │  │  ├─...
    │  ├─Home  前台Home视图目录
    │  │  ├─Public 前台Home的公共目录
    │  │  │  ├─js  home下调用的js文件目录
    │  │  │  ├─css  home下调用的css文件目录
    │  │  │  ├─images  home下调用的图片文件目录
    │  │  ├─Index  首页文件目录
    │  │  │  ├─index.html 首页
    │  │  │  ├─ ...
    │  ├─Admin  同Home
    │  ├─User   同Home
    ├─Upload  公共上传目录
    │  ├─images   上传的图片目录
    │  │  ├─avatar  头像目录
    │  │  ├─ueditor ueditor编辑器上传的图片目录
    │  │  │ ...
    │  │ ...
    ├─Runtime 缓存目录
    ├─ThinkPHP 框架系统目录
    

然后可以再/Application/Common/Conf/config.php文件中定义一些目录

"配置值"
    "TMPL_PARSE_STRING"      => array(    // 定义常用路径
        "__PUBLIC__"         => __ROOT__."/Public",
        "__HOME_CSS__"       => __ROOT__.trim(TMPL_PATH,".")."Home/Public/css",
        "__HOME_JS__"        => __ROOT__.trim(TMPL_PATH,".")."Home/Public/js",
        "__HOME_IMAGES__"    => __ROOT__.trim(TMPL_PATH,".")."Home/Public/images",
        "__ADMIN_CSS__"      => __ROOT__.trim(TMPL_PATH,".")."Admin/Public/css",
        "__ADMIN_JS__"       => __ROOT__.trim(TMPL_PATH,".")."Admin/Public/js",
        "__ADMIN_IMAGES__"   => __ROOT__.trim(TMPL_PATH,".")."Admin/Public/images",
        "__ADMIN_ACEADMIN__" => __ROOT__.trim(TMPL_PATH,".")."Admin/Public/aceadmin",
        "__PUBLIC_CSS__"     => __ROOT__.trim(TMPL_PATH,".")."Public/css",
        "__PUBLIC_JS__"      => __ROOT__.trim(TMPL_PATH,".")."Public/js",
        "__PUBLIC_IMAGES__"  => __ROOT__.trim(TMPL_PATH,".")."Public/images",
        "__USER_CSS__"       => __ROOT__.trim(TMPL_PATH,".")."User/Public/css",
        "__USER_JS__"        => __ROOT__.trim(TMPL_PATH,".")."User/Public/js",
        "__USER_IMAGES__"    => __ROOT__.trim(TMPL_PATH,".")."User/Public/images",
        "__APP_CSS__"        => __ROOT__.trim(TMPL_PATH,".")."App/Public/css",
        "__APP_JS__"         => __ROOT__.trim(TMPL_PATH,".")."App/Public/js",
        "__APP_IMAGES__"     => __ROOT__.trim(TMPL_PATH,".")."App/Public/images"
    ),
);
然后在html文件中就可以直接使用这些路径了,美滋滋~

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/26047.html

相关文章

  • Vuejs多页weback配置

    摘要:字段是用来标记当前页面依赖的除了共有需要依赖的其他,上面的有字段的三个页面都是引用了百度编辑器,因为百度编辑器的包都太大了,所以不建议抽取到公用的里,这里的配置在文件里有单独配置。 webpack的流行给前端开发减少了许多不必要的工作,webpack可以让我们更纯粹的关注我们的代码,但是很多人认为它更适合单页应用,主要有以下一些痛点 如果模板是后台管理的生成的怎么办 我目前没有使用任...

    mykurisu 评论0 收藏0
  • PHP_ThinkPHP

    摘要:相关信息,面向过程,面向对象,轻量级。轻量级功能实用,面向过程和面向对象混合开发。找到文件为文件名为验证码类没有在自动加载类中载入,需要手动载入。底层的和会影响原始的框架中的引入,可以使用框架中提供的引入。 不使用框架的问题 在实际工作中,如果不使用框架会遇到的问题。 程序项目生命时间非常短(维护性,生命力弱) 分共协作开发项目,彼此代码风格不一致。 开发程序,喜欢挖坑。 开发者离职...

    wind3110991 评论0 收藏0
  • PHP_Smarty

    摘要:体现了业务与显示的分离,尽量分离。就负责判断条件,并取出数据来。显示的工作尽量靠前页面缓存缓存,重要概念。减轻了数据库的压力。控制局部不缓存在标签中控制,该标签不缓存。模板调用特殊方法使用对象注册的方式来解决。文件命名函数名定 模板 数据与表现层的标签分离 smarty是PHP 与 HTML代码的分离 小型模板类 $smarty 的工作流程: 把需要显示的全局变量,赋值塞到对象内部的...

    printempw 评论0 收藏0
  • ThinkPHP 扩展配置注意事项

    摘要:扩展配置的优先级仅次于动态配置而高于惯例配置,项目配置等。基于扩展配置的以上特性,通常扩展配置是为了某些特殊的需要,而从项目配置里面分离出来的一些配置信息,这样的目的是为了便于维护和管理。 概要 在 ThinkPHP 3.0 中引入了扩展配置。扩展配置的优先级仅次于动态配置而高于惯例配置,项目配置等。项目配置文件在部署模式的时候会纳入编译缓存,也就是说编译后再修改项目配置文件就不会立刻...

    chaos_G 评论0 收藏0
  • 一个App完成入门篇(五)- 完成新闻页面

    摘要:订阅事件,在其中做更新数据的操作需要特殊注意的是,自定义事件的订阅和触发可以不在同一个页面的脚本环境中完成,只需要保证自定义事件的触发在订阅之后即可。 本节教程将介绍如何用DeviceOne简单而高效的完成一个新闻页面。 导入项目数据模板分离MVVM模型自定义事件展示新闻九宫格展示将要学习的demo效果图如下所示showImg(https://segmentfault.com/img/...

    AZmake 评论0 收藏0

发表评论

0条评论

Yuqi

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<