smarty是一个PHP模板引擎。更明确来说,它可以帮助开发者更好地 分离程序逻辑和页面显示。最好的例子,是当程序员和模板设计师是不同的两个角色的情况,而且 大部分时候都不是同一个人的情况。
举个例子,现在你要制作一个页面来显示新闻内容。
文章内有$headline, $tagline, $author 和 $body等各部分内容, 这些内容没有包括它们如何被显示的信息。 程序将它们传递给Smarty。
然后,模板设计师编辑模板,使用HTML标签和 模板标签,来对这些内容进行排版显示, 如表格、DIV、背景颜色、字体大小、样式表、SVG等等。
当有一天,程序员需要改变文章数据内容的获取方式,也就是修改程序逻辑。 那么这个改变不会影响到模板设计师的工作,内容还是会传递到模板。
同样的,如果模板设计师想要完全重新设计模板,也可以做到完全不需要修改程序逻辑。
所以,程序员可以改变程序逻辑,而不需要调整模板页面; 模板设计师也可以修改模板,而不会打断程序逻辑。
业务逻辑和显示逻辑分离,是Smarty的一个设计理念。
这意味着模板可以包含部分仅作为显示用的逻辑代码。 这些显示逻辑如:包含 其他模板,交替设置表格每行的颜色, 把变量转为 大写字母, 循环遍历数组并 显示出来。
Smarty也不是无论如何也强制分离业务和显示逻辑。毕竟Smarty 无法知道谁是谁,所以,会不会把业务逻辑放到模板也是看你怎么处理。
同时,如果你希望在你的模板里没有任何的逻辑代码,你也可以 把模板写成仅剩下文字和变量。
非常快速。
比PHP内嵌到HTML中的做法要有效率的多。
无模板解析的开销,只编译一次。
仅当模板文件被修改后才会聪明地重新编译。
你可以很容易创建自己的函数 和 变量修饰器,非常具有可扩展性。
可配置的模板定界符语法{delimiter}, 你可以使用{$foo}, {{$foo}}, <!--{$foo}-->等等。
条件判断语句 {if}..{elseif}..{else}..{/if} 会直接使用PHP解析,所以{if...}后可以是简单或者较复杂的表达式。
支持无限的 sections, if等的嵌套。
内置缓存支持。
任意的模板源。
模板继承 可以轻松管理模板和内容。
插件 架构。
postman绿色版下载2697人在玩postman是款强大网页调试工具的windows客户端,提供功能强大的WebAPIHTTP请求调试。它能够发送任何类型的HTTP请求GETHEADPOSTPUT..,附带任何数量的参数+headers。
下载Rider2020汉化包2098人在玩JetBrains Rider 2020专门为针对C#用户打造的一款实用开发编程的激活码软件,该软件具有强大实用的编辑功能
下载GitKraken 破解版下载1021人在玩GitKraken是一个git图形化工具,GitKraken具有界面酷炫、容易上手、功能简洁、使用方便的特点,无需复杂的配置,有需要的赶快下载吧。
下载dx11下载955人在玩dx11是由微软为游戏开发者提供的一个多媒体开发编程接口,可综合考察DX11 PC游戏平台的整体图形性能。增加了新的计算shader技术,可以允许GPU从事更多的通用计算工作,而不仅仅是3D运算。
下载caxa制造工程师下载937人在玩caxa制造工程师是由数码大方推出的一体化数控加工编程软件,为用户提供了丰富实用的数控加工编程模板,还可以通过扫描、放样、拉伸、导动、等距生成各种复杂曲面,可以应用于各类复杂的零件和模具编程操作
下载Yuzu模拟器中文版下载930人在玩Yuzu模拟器是一个实验性的开源NintendoSwitch模拟器,作者是之前3DS模拟器Citra的创造者。Yuzu模拟器PC版这个模拟器是用C++编写的,考虑到可移植性,在为Windows、Linux和macOS积极维护构建。
下载Teleport pro下载835人在玩Teleport pro是一款专门用于网页下载保存离线浏览的软件,仅可以在网上任意一个地方抓取你想要的任何文件,还可以在你指定的时间去抓制定的网页或网站上的内容。
下载modelsim 64位破解版[百度网盘资源]822人在玩ModelSim SE-64 10.6e破解版是一款专业好用手hdl语言仿真软件,是业界唯一单内核支持VHDL和Verilog混合仿真的仿真器,拥有操作简单、编译仿真速度快的特点
下载rational rose下载806人在玩rational rose是由rational公司推出的一款可视化建模工具,软件提供了丰富实用的功能模块,有了它就可以轻松绘制出满意的UML图了,可以促进对需求的更好理解,更好的设计软件。
下载Snapde 免费版下载752人在玩如果CSV文件超过104万行Excel、wps打不开,使用什么软件对对超大CSV文件进行编辑呢?Snapde,它是最好用的CSV大文件编辑电子表格软件之一,内核全部用C语言编写,对于数据编辑和运算非常轻巧强大。
下载