ThinkPHP3.2.3整合smarty模板(一)
一、php模板引擎有哪些?
1.1 PHPLIB:一套古老且主流的模板引擎,直接在html中使用PHP变量进行编程;
1.2 Template Blocks:一款轻巧且速度非常快的PHP模板引擎,支持xml语法;
1.3 TinyButStrong:小且强的模板,业界非常著名好用的模板引擎,直接支持Dreamweaver插件编辑;
1.4 Rain TPL:易于使用和安装引擎,有6个标签,3个PHP函数和2个PHP类,支持对模板中的相对路径自动转换为绝对路径;
1.5 PHPTAL:是一个ZPT的PHP执行。简而言之,PHPTAL是一个PHP下的XML/XHTML模板库;
1.6 PHP Template Engine:类似于PHPLIB,但支持在模板中使用Cookie、Session。
使用特定的语法的模板引擎由于性能问题,近年来受到一些诟病,但由于其能够真正将界面设计人员与PHP开发人员很好的分离,所以在大型项目开发中具有不可替代的作用,而这一类的模板引擎最流行的就是Smarty了。
二、什么是Smarty?
Smarty是PHP中一套非常完善、强大的PHP模板引擎,真正实现了PHP代码与界面html代码的分离,尽管php技术已经发展的非常的完善,各种MVC框架的出现实现了Smarty代码分离的功能,但Smarty凭借着稳定的性能、高效的模板标签、灵活的扩展机制,使其仍然具有不可替代的作用。
三、开启ThinkPHP模板扩展
3.1 在配置文件里面加上一下配置代码:
'TMPL_ENGINE_TYPE' => 'smarty',
'TMPL_TEMPLATE_SUFFIX' => '.html',
'TMPL_ENGINE_CONFIG' => array(
'template_dir' => ROOT_PATH . 'Template/',
'cache_dir' => CACHE_PATH,
'config_dir' => ROOT_PATH . 'Template/Conf/',
'compile_dir' => ROOT_PATH . 'Template/Runtime/compiles',
'compile_check' => true,
'use_sub_dirs' => true,
'caching' => false,
'left_delimiter' => '<--{',
'right_delimiter' => '}-->',
'plugins_dir' => APP_PATH . 'Smarty/Plugins/',
)
3.2 在控制器里面写上一下代码:
public function index(){
$this->assign('pageTitle', '网页标题');
$this->assign('pageContent', '这是网页内容');
$this->display();
}
3.3 测试:

四、整合完成。
ThinkPHP3.2.3整合smarty模板(一)的更多相关文章
- ThinkPHP3.2.3整合smarty模板(二)
前言:继ThinkPHP3.2.3整合smarty模板(一)之后,继续来探讨一下tp框架整合smarty模板,看到有人在群上问到怎么使用自定义的常量,今天就具体来谈谈: 一.开发一个项目,必不可少会用 ...
- ThinkPHP3.2.3整合smarty模板(三)
在smarty模板中使用thinkphp框架的U方法时要主要的问题: 1.不能直接使用{:U('Index/index')}: 2.正确的使用方法为:<!--{U("Login/log ...
- Ci框架整合smarty模板引擎
Ci框架整合smarty模板引擎 备注:下载smarty时,最好选择2.6版本,其他测试有坑,ci可以是2.2或其他 大体思路:将smarty封装成ci框架的一个类,然后重新配置一下smarty,这样 ...
- 解决thinkPHP3.2.3使用Smarty模板后无法使用系统常量问题
https://blog.csdn.net/u014520745/article/details/52029411 在ThinkPHP/Library/Think/View.class.php 输出模 ...
- 深入浅出之Smarty模板引擎工作机制(一)
深入浅出Smarty模板引擎工作机制,我们将对比使用smarty模板引擎和没使用smarty模板引擎的两种开发方式的区别,并动手开发一个自己的模板引擎,以便加深对smarty模板引擎工作机制的理解. ...
- ThinkPHP3.1.3 整合 UEditor百度编辑器 图片上传
第一步.前端模板实例化百度编辑器 <js file='__ROOT__/Data/UEditor/ueditor.config.js' /> <js file='__ROOT__/D ...
- ThinkPHP+Smarty模板中截取包含中英文混合的字符串乱码的解决方案
好几天没写博客了,其实有好多需要总结的,因为最近一直在忙着做项目,但是困惑了几天的Smarty模板中截取包含中英文混合的字符串乱码的问题,终于解决了,所以记录下来,需要的朋友看一下: 出现乱码的原因: ...
- 12月15日下午Smarty模板函数
1.{$var=...} 这是{assign}函数的简写版,你可以直接赋值给模版,也可以为数组元素赋值. <{$a = 10}><!--赋值语句--> <{$a}> ...
- 12月15日smarty模板基本语法
smarty基本语法: 1.注释:<{* this is a comment *}>,注意左右分隔符的写法,要和自己定义的一致. <{* I am a Smarty comment, ...
随机推荐
- The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.
今天项目中报了如下错误 The last packet sent successfully to the server was 0 milliseconds ago. The driver has n ...
- Redis学习笔记2-Redis的安装体验
Redis的官方只提供了Linux版本的,并没提供Windows版本的(不过非官方有windows版本的.可以下载下来做开发测试学习用非常方便.博客后面会介绍到的).Linux下安装过程如下[以下命令 ...
- Nodejs以后台服务启动
1: 从网上查找 LINUX中我们可以使用这种简单的方式让node.js在后台运行: nohup node your_app.js & 经多次实验一直没有成功 2:使用 forever ...
- Apache2.4部署django出现403 Forbidden错误解决办法
前言:Apache2.4部署django出现403 Forbidden错误最好要结合apache中的错误日志来观察出现何种错误导致出现403错误 下午百度了一下午没找到解决办法,试了n种方法,简直坑爹 ...
- [WPF系列]-基础 TextBlock
AUTOMATICALLY SHOWING TOOLTIPS ON A TRIMMED TEXTBLOCK (SILVERLIGHT + WPF)
- 帆软报表FineReport SQLServer数据库连接失败常见解决方案
1. 问题描述 帆软报表FineReport客户端连接SQLServer(2000.2005等),常常会出现如下错误:com.microsoft.sqlserver.jdbc.SQLServerExc ...
- [转]中国最大的Webshell后门箱子调查,所有公开大马全军覆没
起因 对这件事情的起因是某天我渗透了一个大站,第二天进webshell时就发现,当前目录出现了新的后门,仔细一查,发现是博彩团伙干的,网站被全局劫持黑帽程序如下代码 set_time_limit(); ...
- transactionManager的type与dataSource的type
1. 在ibatis的配置文件中dataSource 节点有这么个配置<datasource type="SIMPLE"></datasource>,根据原 ...
- Hibernate 延迟加载和立即加载
概念 什么是延迟加载:所谓延迟加载就是当在真正需要数据的时候,才真正执行数据加载操作.可以简单理解为,只有在使用的时候,才会发出sql语句进行查询,数据是分N次读取. 什么是立即加载:所谓立即加载既是 ...
- 第一个JAVA应用
1.1创建源文件 1.1.1Java源文件结构 Java应用由一个或多个扩展名为“.Java”的文件构成,这些文件被成为源文件.从编译角度,则被称为编译单元(Compilation Unit). 如果 ...