Smarty 3.1.24 发布,PHP 模板引擎

taozishow
 taozishow
发布于 2015年06月04日
收藏 12

Smarty 3.1.24 新功能:bug修复和改进,最值得注意的是,编译速度比上一版本提高30-40%!

smarty 是一个基于PHP开发的PHP模板引擎。它提供了逻辑与外在内容的分离,简单的讲,目的就是要使 用PHP程序员同美工分离,使用的程序员改变程序的逻辑内容不会影响到美工的页面设计,美工重新修改页面不会影响到程序的程序逻辑,这在多人合作的项目中 显的尤为重要。


本站文章除注明转载外,均为本站原创或编译。欢迎任何形式的转载,但请务必注明出处,尊重他人劳动共创开源社区。
转载请注明:文章转载自 开源中国社区 [http://www.oschina.net]
本文标题:Smarty 3.1.24 发布,PHP 模板引擎
加载中

最新评论(35

宏哥
宏哥

引用来自“eechen”的评论

SSDB作者是这样说的:
http://www.ideawu.net/blog/archives/828.html
不要"创造"所谓的模板语言
PHP 语言本身就是模板语言, PHP 做模板语言对于 PHP Web 来说是最完美的, 可维护性和培训成本最佳的语言, 只需要再多说一两句话规范即可: 仅使用 echo 及允许的帮助 echo 的函数, 和 if/for/while. 我十年前不认同 smarty 这类模板工具的意义, 十年后也不认可这类毫无意义的寄生于 PHP 的工具.

引用来自“宏哥”的评论

你说的还算靠谱, 实际上, 只要简化 双引号的 处理就够了。所以我用vemplator改进版

引用来自“mark35”的评论

vemplator,在模板中执行函数时,如果函数有两个参数,第二个参数是数组下标格式,那么就有点问题。并且参数之间不能有空格。一直没时间去修改
我给你一个升级版本的
mark35
mark35

引用来自“eechen”的评论

SSDB作者是这样说的:
http://www.ideawu.net/blog/archives/828.html
不要"创造"所谓的模板语言
PHP 语言本身就是模板语言, PHP 做模板语言对于 PHP Web 来说是最完美的, 可维护性和培训成本最佳的语言, 只需要再多说一两句话规范即可: 仅使用 echo 及允许的帮助 echo 的函数, 和 if/for/while. 我十年前不认同 smarty 这类模板工具的意义, 十年后也不认可这类毫无意义的寄生于 PHP 的工具.

引用来自“宏哥”的评论

你说的还算靠谱, 实际上, 只要简化 双引号的 处理就够了。所以我用vemplator改进版
vemplator,在模板中执行函数时,如果函数有两个参数,第二个参数是数组下标格式,那么就有点问题。并且参数之间不能有空格。一直没时间去修改
taozishow
taozishow
smarty作为最经典的一款模板引擎,堪称模板界的鼻祖,目前流行的模板引擎无都是借鉴smarty的工作原理,如果你用模板引擎推荐使用smarty
倪倪
Smarty最终生成的仍是原生PHP,确是给很多场合带来便利,如果您觉得不够高大上了,大可有自己的一套,没有任何人要求你一定要用它。
倪倪

引用来自“倪倪”的评论

还弄一串代码上来喷的,你们的数据操作,业务逻辑代码呢?难道你们平时只有一些=,if什么的吗?

引用来自“MrBighost”的评论

数据操作和业务逻辑代码应该落在视图层吗?
之前的人是在讨论PHP-Web项目的视图层有没有必要使用模板引擎。
对应没接触过php和模板引擎的前端来说,模板引擎会比原生php的几种视图层用到的语法简单多少?
smarty这种我觉得还算可以接受的,至少模板拿出来一眼看去知道是模板;我现在项目在用thinkphp,他自带的模板引擎感觉很作,使用dom标签的形式,关键是项目里很多人很多地方在标签里嵌套tp模板标签,这样真的好么:
<span <eq name="key" value="1">class="checked"</eq> >
那你视图数据怎么来的?不还是要通过类似的方法映射过来吗?要不你是怎么分的层。别跟我说你自己弄个所谓的原生,那个不叫模板引擎
MrBighost
MrBighost
我的观点:
PHP-Web项目的视图层,使用原生PHP也许是更好的选择

另外,视图层使用原生PHP ≠ 逻辑不分层\全整在一起
视图层本该只涉及到一些简单的流程控制、变量输出,这种需求下,原生PHP相对模板引擎的学习成本和使用成本都不落下风
MrBighost
MrBighost

引用来自“倪倪”的评论

还弄一串代码上来喷的,你们的数据操作,业务逻辑代码呢?难道你们平时只有一些=,if什么的吗?
数据操作和业务逻辑代码应该落在视图层吗?
之前的人是在讨论PHP-Web项目的视图层有没有必要使用模板引擎。
对应没接触过php和模板引擎的前端来说,模板引擎会比原生php的几种视图层用到的语法简单多少?
smarty这种我觉得还算可以接受的,至少模板拿出来一眼看去知道是模板;我现在项目在用thinkphp,他自带的模板引擎感觉很作,使用dom标签的形式,关键是项目里很多人很多地方在标签里嵌套tp模板标签,这样真的好么:
<span <eq name="key" value="1">class="checked"</eq> >
咚往咚来
咚往咚来

引用来自“kideny”的评论

模板引擎是给不懂程序的前段用的
错了,给小公司用的,大公司,没有前端搞什么smarty,不如不用
taozishow
taozishow
请大家理性讨论,smarty之所以还能存在充分说明了它有一定的合理性。如果一个人开发既是后台又是前端当然没有必要用模板引擎,但如果是中大型项目模板引擎的思路还是有用的,分工更合理,网站结构也更灵活清晰。
返回顶部
顶部