打开和关闭 PHP 是不是被认为是不好的做法? [关闭]
Posted
技术标签:
【中文标题】打开和关闭 PHP 是不是被认为是不好的做法? [关闭]【英文标题】:Is opening and closing PHP considered bad practice? [closed]打开和关闭 PHP 是否被认为是不好的做法? [关闭] 【发布时间】:2012-11-25 00:26:08 【问题描述】:我目前正在寻找一种将javascript
插入到我的 php 代码中的方法,但是,我无法在 echo 中执行此操作。我正在考虑使用以下解决方法:
<?php
some code
?>
<script type="text/javascript>
js things
</script>
<?php
more code
?>
然而,我有点担心打开和关闭<?php
部分。这被认为是不好的做法吗?为什么?
【问题讨论】:
不,这是很正常的做法。事实上,我会鼓励这样做。 但我会避免将任何实质性逻辑与 html 混合。 @NolwennLeGuen 告诉你的人可能应该被扇耳光;最好戴上厚重的皮手套。 如果它是纯服务器端脚本,则关闭 PHP 是不好的做法,因为如果在?>
之后有字符(如返回),它会将它们输出到浏览器并可能阻止发送标头(喜欢位置:foo.com)
^ 是的,通常的惯例是不关闭 PHP-HTML 中的最后一个 PHP 标记。
【参考方案1】:
打开和关闭 PHP 是否被视为不好的做法?
没有。
当你开始时,你进入了不好的做法的灰色区域:
长时间运行的 PHP 块,通过echo
、print
等输出 HTML。
使用短开标签。
不要在结束标记前使用分号。
我鼓励您阅读有关 php tags 和 instruction separation 的信息。
关于 JavaScript 不好的做法,您可能希望通过使用外部 JavaSCript(也更高效)。 Read more.
【讨论】:
【参考方案2】:不,这不是坏习惯。您应该考虑到您的文档基本上是 HTML。所以 PHP 几乎“注入”了更多的东西。如果您没有关闭 PHP 而是使用它来输出相同的内容,那么您会做完全相同的事情,但会以更复杂的方式和更密集的处理器方式进行,因为 PHP 标记内的所有内容都必须进行解析。相反,这些标签之外的东西是纯HTML,不被解析,而是直接发送。所以这不是坏习惯。这是个好习惯!
【讨论】:
如果您将<?php ... ?>
视为处理指令,并照此使用它,这并不可怕。问题是,人们将在 PHP 标记中查询数据库和其他所有内容,对于所有意图和目的来说,应该是“视图”。所以也许这本身并不是一个糟糕的设计,但它肯定可以做到这一点。【参考方案3】:
不,不是。 虽然我更喜欢在顶部保留尽可能多的代码,以提高脚本的可读性和维护性。
莱昂
【讨论】:
【参考方案4】:虽然我会警告您在混合不同的脚本类型时要节俭,但这在编程中是非常正常且可以接受的。如果您能找到解决方法,我会建议您这样做,但这比尝试从 PHP 回显 Javascript 要好得多。
【讨论】:
我个人认为这是一种可怕的做法。我从来没有在 PHP 脚本中使用过多个 PHP 标记。每个 PHP 文件包含一个 PHP 标记和一个 PHP 类(没有 JavaScript,也没有 HTML)。 HTML 进入 HTML 文件。 JavaScript 进入 JavaScript 文件。 PHP 决定提供什么,将一些文档片段组合在一起,然后通过网络发送。关注点分离。 @GGG,听起来像是 PHP 开发乌托邦。但是你不要自相矛盾,你说的文档片段是什么意思。 @JasonMcCreary,过去我使用 XML 文档/文档片段,并将它们组合成 XHTML 文档。现在 XHTML(和某种 XML)已经不再流行了,我只使用 HTML 文档片段。 “节俭”一词也加 1。绝对是这个答案的一半乐趣以上是关于打开和关闭 PHP 是不是被认为是不好的做法? [关闭]的主要内容,如果未能解决你的问题,请参考以下文章
在 Android 的 AsyncTask 期间更改活动是不是被认为是不好的做法?