[label][Smarty]Smarty使用心得
Smarty模板引擎,使用smarty好处就是可以实现页面缓存,从而加快了初始化之后的页面访问速度。
某种程度上,smarty模板确保了template页面的代码整洁,避免了HTML标记与PHP的混合。
在维护业务逻辑代码时,我们可以只修改业务逻辑代码的脚本文件;
在产生页面修改和页面重构时,我们可以只修改页面文件即可。
PHP只负责业务逻辑和数据
Smarty模板则将数据显示到页面,因为HTML标记是没有任何逻辑功能的。
Smarty模板使用建议:
1. 不要一个个变量的地assign到smarty模板中去,而应该将数据根据相关性组织、分类好,以一个一维的关联数组assign过去。
在tpl文件中,通过使用smarty模板的数组访问方式获取到数据并展示。
例子: 一个在线的web酒店订房网站,它有一个所有页面都有的订房导航栏,如下图:
那么该导航上面的数据:check in date , check out date , adults , children , nights , extrabed , package
这七个数据应该都是与订房相关的,可以将它们都组合到一个数组中去,然后再assign过去,在tpl中调用。
而不是将每个数据分散assign过去,这样子就很不方便管理和修改。
然后就是Step1中需要展示的房间信息,房间信息数据可以作为一个独立的数组存放,再assign过去tpl中调用,如下图:
[label][Smarty]Smarty使用心得的更多相关文章
- [smarty] smarty 模板文件中进行字符串与变量的拼接
// smarty 模板引擎 $arr_tribeLabelList["`$tribe_id`_"]
- smarty 学习记录
smarty模版是比较大众化的一个模版,在php开发过程当中被很多开发者视为最友好的模版之一,学习smarty课程对于很多培训机构来说也是列入了培训课程之一,那么很多方面就需要我们学习了一. 安装首先 ...
- smarty使用
smarty-牛刀小试 smarty 初识 官网 http://www.smarty.net/ Smarty is a template engine for PHP(PHP模板引擎) smarty使 ...
- MVC架构学习之Smarty学习——病来而蔫
前两天是五一小长假,而每次假期都想着如何如何刻苦一番,往往是自作多情.. 当然这次是有小病在身,多个借口吧. 一有病就蔫的不行...要锻炼了啊,脚估计也差不多了,游泳试试吧这周. 这次学习Smarty ...
- smarty 模板几个例子
一.assign和display方法的使用以及几个变量调节器 header("content-type:text/html;charset=utf-8");//加载Smarty引擎 ...
- 什么是smarty?
什么是smarty? Smarty是一个使用PHP写出来的模板PHP模板引擎,由PHP.net官方提供 ,它提供了逻辑与外在内容的分离,简单的讲,目的就是要使用PHP程 序员同美工分离,使用的程序员改 ...
- 第八十七天请假 PHP smarty模板配置以及简单的调用方式
smarty模板的配置文件 <?php define("ROOT",str_replace("\\","/",dirname(__FI ...
- ci配置smarty手记
需要用ci来写一个后台配置smarty,在网络上能够找到一些相关的文章.但是都是比较旧的内容,大部分是smary2.*的配置方法.按照这个配置后会出现一些错误.其实配置看smary官方会比较简单. 基 ...
- smarty 快速上手
smarty半小时快速上手入门教程 投稿:shichen2014 字体:[增加 减小] 类型:转载 时间:2014-10-27我要评论 这篇文章主要介绍了smarty半小时快速上手入门教程,以实例的形 ...
随机推荐
- phalcon安装笔记
参考官网 git clone --depth= git://github.com/phalcon/cphalcon.git cd cphalcon/build sudo ./install 添加配置文 ...
- WinForm中Application.Idle事件用法
Application.Idle 事件 描述:当应用程序完成处理并即将进入空闲状态时发生.如果您有必须执行的任务在线程变为空闲之前,请将它们附加到此事件. public partial class F ...
- mysql-9索引
mysql索引的建立对于mysql的高效运行是很重要的,索引可以大大提高mysql的检索速度. 索引分为单列索引和组合索引. 单列索引,即一个索引只包含单个列,一个表可以有多个单列索引,但这不是组合索 ...
- 读java并发编程笔记
同步策略:在共享资源上面加锁 java监视器模式:class对象-与之对应的锁(内置锁)[对象锁与class锁] 执行策略: 取消策略: =============================== ...
- C#遍历XmlDocument对象所有节点名称、类型、属性(Attribute)
C#遍历XmlDocument对象所有节点名称.类型.属性(Attribute) 源码下载 代码 static void Main(string[] args) { System.Xml.XmlDoc ...
- uva-10785-模拟水题
模拟题: 1• The name has a predefined length N.名字长度N2• The vowel value and consonant value of the name m ...
- centos7上mysql无法启动也没有日志
报错的原因就是 [root@localhost duanxinli]# journalctl -xe-- Subject: Unit mysqld.service has begun start-up ...
- leetcode434
public class Solution { public int CountSegments(string s) { s = s.Trim(); ) { ; } else { ; ; ; i &l ...
- Git----时光穿梭机之管理修改04
假如你已经阅读了https://www.cnblogs.com/cxq0017/p/9663452.html Git工作区和暂存区,并且已经掌握了暂存区的概念,下面我们要讨论的是,为什么Git比其他版 ...
- Symfony 建立一个Bundle
如果说,这个时候你萌生了一个去看一看Symfony源码的想法,个人建议还是算了,看了之后,你就会感到非常迷茫.因为他实在是大于绝大部分你使用过的框架,并且有多达近二十个的插件,使用了一些非常精巧的设计 ...