ThinkPHP使用Smarty模板引擎的流程及注意事项
在多人合作的项目中,Smarty模板使用的最多,具体原因百度。

而ThinkPHP中默认使用的模板是Think自己的模板,这就需要修改默认的模板引擎变量。

步骤如下:

①在config.php中定义如下配置项

'TMPL_ENGINE_TYPE'=>'Smarty',
②上一步已经切换了模板引擎,css样式如果有{},需要使用{literal}标签禁止smarty解析,使用{literal}{/literal}标签包含起来。

③如果业内css引用等地方使用了自定义的系统变量,如$Think.const.CSS_URL(注意使用Thinkphp模板时可以使用例如$Think.CSS_URL的缩写形式,但是切换成smarty模板时不能省略const!)将关键字$Think 变为 $smarty(注意开头字母变了小写)。

④tp引擎会对关键常量进行替换例如:__CONTROLLER__ __MODULE__等,smarty引擎不会替换,需要设置为:{$smarty.const.__CONTROLLER__}解析出来。

TP框架中用tp模版迁移smarty模版的注意事项的更多相关文章

  1. swoole之 swoole_process 应用于TP框架

    swoole_process 实现了多进程的管理,多个进程同时进行采集任务, 公司的框架比较low,用的tp框架,结合tp框架实现多进程的采集 这是swoole好的学习资源 https://segme ...

  2. tp框架的增删改查

    首先,我们来看一下tp框架里面的查询方法: 查询有很多种,代码如下: <?php namespace Admin\Controller; use Think\Controller; class ...

  3. 基于TP框架的ThinkCMF,控制器display方法源码分析

    昨天在写代码的时候,看见写了无数次的模版渲染方法:$this->display(),突然很想弄清楚它是如何实现的. 今天不忙,就分析了一下. class TestController exten ...

  4. tp框架中的一些疑点知识-5

    关于vim中的缓存区的前后bp和bn的界定 通过命令ls可以看到 缓存区的 排序. 最开始打开的文件排在最上面, 序号最小. 那么它们就是 更 前 的缓冲区. 序号更前的用bp, 序号靠后的用bn. ...

  5. tp框架基础(详细步骤分解,易懂)下

    在浏览器中如果要访问操作方法的时候以什么方式来访问 有四种方式 第一种是get方式,第二种是访问路径 这四种方式我们可以通过修改配置文件来改掉url的模式 我们需要来改一下我们的配置文件 在这个路径下 ...

  6. ThinkPhp框架:有条件的数据库查询、tp框架的其他知识

    上一篇的随笔写的是基本操作,现在可以做一些高级操作,例如有条件的查询数据,有分页的条件查询数据 一.一个条件的查询数据 查询数据自然是先要显示出数据,然后根据条件进行查询数据 (1)显示出表的数据 这 ...

  7. 关于TP框架

    TP的特性有哪些? 1.多表查询非常方便,在model中几句代码就可以完成对多表的关联操作. 2.融合了smarty模板,使前后台分离 3.支持多种缓存技术,尤其对memcache技术支持非常好 4. ...

  8. tp框架实现验证码

    今天来看一个小插件. tp框架是怎么实现验证码的. 又到了我们千篇一律的时候了,首先呢,先做一个用来显示的html界面名为:zhuce.html <!DOCTYPE html PUBLIC &q ...

  9. tp框架验证信息

    今天在这里我们学习一下tp框架里面怎么做验证. 验证又分为两种:静态验证.动态验证 首先,我们还是先做一个html界面,名为add.html.代码如下: <!DOCTYPE html PUBLI ...

随机推荐

  1. C语言32个关键字

    auto   局部变量(自动储存) break无条件退出程序最内层循环 case   switch语句中选择项 char单字节整型数据 const定义不可更改的常量值 continue中断本次循环,并 ...

  2. WeX5开源免费跨端开发工具-html5 app开发就用WeX5

    http://www.wex5.com/wex5/?utm_source=Baidu-0815

  3. HTML5 respond.js 解决IE6~8的响应式布局问题

    HTML5 respond.js 解决IE6~8的响应式布局问题   响 应式布局,理想状态是,对PC/移动各种终端进行响应.媒体查询的支持程度是IE9+以及其他现代的浏览器,但是IE8在市场当中仍然 ...

  4. Java集合框架的接口和类层次关系结构图

    Collection和Collections的区别 首先要说的是,"Collection" 和 "Collections"是两个不同的概念: 如下图所示,&qu ...

  5. mysql执行计划

         烂sql不仅直接影响sql的响应时间,更影响db的性能,导致其它正常的sql响应时间变长.如何写好sql,学会看执行计划至关重要.下面我简单讲讲mysql的执行计划,只列出了一些常见的情况, ...

  6. Navicat常用快捷键

    [ctrl+q]           打开查询窗口 [ctrl+/]            注释sql语句 [ctrl+shift +/]    解除注释 [ctrl+r]               ...

  7. 与POS机通信时的3DES(双倍长)加密解密

    项目中有个SocketServer要和移动便携POS机通信,POS开发商就告诉我们他们用的3DES(双倍长)加密,给了个Key.数据和结果,让我们实现. c#用TripleDESCryptoServi ...

  8. Linux信号

    信号本质上就是一个软件中断,它既可以作为两个进程间的通信的方式, 更重要的是, 信号可以终止一个正常程序的执行, 通常被用于处理意外情况 ,* 信号是异步的, 也就是进程并不知道信号何时会到达 $ki ...

  9. ResultSet rs = stmt.executeQuery(sql); 返回值问题判断

      JAVA  ResultSet rs = stmt.executeQuery(sql);  //查询返回的结果集不管是否查到,rs都不是null,那么问题是怎么判断查找不到来执行一个提示“账号或者 ...

  10. php实现SESSION跨域

    稍微大一点的网站,通常都会有不只一个服务器,每个服务器运行着不同的功能模块或者不同的子系统,他们使用不同的二级域名,比如www.a.com.i.a.com.bbs.a.com.而一个整体性强的网站,用 ...