Smarty在使用PHP或更好地使用纯PHP时会带来哪些好处?
作者:互联网
我决定是否在PHP代码中使用一些模板引擎或不.
现在我仔细看看Smarty.
说实话,我不清楚它的好处.
我的印象从一开始就不太好.
我试图通过演示应用程序:http://www.smarty.net/sampleapp1.从一开始我就获得了通知.我通过将值传递给表单来修复此问题.
我改变了代码
// adding a guestbook entry
$guestbook->displayForm();
至
// adding a guestbook entry
$guestbook->displayForm(array('Name' => '', 'Comment' => ''));
虽然猜测这一点我明白它使调试代码变得复杂.
这也让我学习了另一种语言 – 这很容易,但最简单的是,如果没有必要,就不要学习新的东西.
另一种方法是使用PHP本身.
语法比较http://www.smarty.net/syntax_comparison对我来说最有趣:计算符号数….但我熟悉PHP,这对我来说很容易写,而Smarty对我来说是新的.而且我不认为Web设计师很难学习一些简单的php结构,而Smarty在这方面也是如此简单.如果我错了,最好在这里听到网页设计师的意见.
Smarty解析代码,这实际上是时间开销.
但与此同时,很多人都在使用它.这就是为什么我想了解其原因?
好处在哪里?我错过了什么吗?
如果你知道Smarty的替代品,那么了解它会很好.
谢谢!
更新:
我也找到了关于主题的问题:How to use Smarty better with PHP?.一般来说,它也是关于不使用Smarty.但这是1.5岁.可能有些变化?
解决方法:
我同意它导致开销,我在一个使用Smarty的项目中工作,这是一场噩梦.您可以获得的两个好处是
1:不熟悉PHP的设计人员可以使用您的HTML,而无需编写所需的编码技能.但这是不是意味着他们最终需要先研究Smarty?我真的没有看到任何意义.
2:对于模板分离:您可以像使用Smarty一样使用PHP替代语法,而不会失去那种巨大编程语言的强大功能.替代语法示例:
<div>Product list</div>
<?php foreach($products as $product): ?>
<div>Product: <?php echo $product->name; ?> </div>
<div>Price: <?php echo $product->price; ?> </div>
<?php if($product->discountPercentage): ?>
<div>
Discount: <?php echo $product->price * $product->discountPercentage / 100; ?> off! </div>
<?php endif; ?>
<?php endforeach; ?>
标签:php,template-engine,smarty 来源: https://codeday.me/bug/20190827/1737665.html