我经常使用 PHP,每当我在某个论坛上看到“讨厌 PHP”的帖子,甚至在这里看到流行的 PHP 相关讨论时,我通常会看到类似以下内容的内容:
PHP is too messy/sloppy/crappy, because you have a tangled web of presentation and logic.
然后我看到 PHP-Defenders 对上述某些版本的回复说这不一定是真的。我开始思考“这怎么可能……?”和“什么才算混合了表达和逻辑?”我想不通,所以现在我来了。
以下哪项是最佳做法?还是有我不知道的更好的方法?
<?php
if(!function()) {
echo '<div id="results">The result is a lie.</div>';
}
?>
或者
<div id="results">
<?php
if(!function()) {
echo 'The result is a lie.';
}
?>
</div>
我知道上面的例子看起来没什么大不了的,但是在浏览了我的网络应用程序之后,我意识到它有点乱(因为我混合了 HTML 和 PHP),所以我希望有是一个很好的开发方式,同时保持事物的整洁。
最佳答案
也许你想看看模板引擎,比如 smarty。这可以为您将其分开。
一些(希望是平衡的)补充见下面相当大的评论部分:
关于smarty的讨论似乎很多。据我所知,这里还有两个额外的营地,
有人说:模板引擎,好的,但 smarty 不是最好的;使用(在此处插入您的选择)。 例如:twig 或 dwoo。
另一个说:不要使用单独的模板引擎!因为 PHP 完全有能力自己做这件事。评论中的示例包括:
Use Zend_View and Savant
关于php - 如何不将表示与逻辑混在一起?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4740459/