在PHP文件中编写HTML

时间:2014-04-09 14:30:01

标签: php html

我是PHP的新手,所以我想知道什么是更好的:在php中编写html代码回显或打印它或关闭PHP标签并编写html"纯html"? 有差异还是仅仅是品味问题?

例如 1:

<html>
<body>
    <?php 
       (php code goes here)
    ?>
</body>
</html>

2:

<?php 
echo "<html>";
echo "<body>";
   (php logic goes here)
echo "</body>";
echo "</html>";
?>
谷歌搜索没有给我一个确切的答案,所以如果有这样的话题,我很抱歉。

9 个答案:

答案 0 :(得分:2)

最重要的是,当然,单独的逻辑和演示,但如果你想在页面中嵌入php代码,你应该使用第一个选项,所以通常写模板。而这里的第二个选项无效。

答案 1 :(得分:1)

我不认为在这种情况下使用php是有原因的。坚持使用HTML,CSS和Javascript来处理那些不需要php的东西。

示例1看起来更简洁。

但另一方面,如果你正在尝试学习php,那么将它用于所有事情是一种好习惯,我想让自己沉浸在那种语言中!

答案 2 :(得分:1)

这是个人选择。

个人;我看一下HTML的数量。 PHP有更多的HTML吗?我使用示例1.但是如果有很多PHP并且我需要创建(例如)select,我使用示例2.

无论哪种方式,最好将HTML和PHP保持为尽可能分离,因此最好使用示例1。

答案 3 :(得分:1)

示例1很好。

但是,如果您正在开发前端UI,那么它取决于您正在开发的内容,那么示例1就可以了。

在后端或更多动态函数的情况下或简单的单词更多PHP代码然后示例2工作。

答案 4 :(得分:1)

您的IDE正在教您不回应它。

如果您回复HTML代码,大多数IDE都无法帮助您进行标记,因为他们认为这是正常的字符串。

此外,还需要分离逻辑和演示。

我更喜欢第一个例子。

答案 5 :(得分:1)

<html> 
 <title>HTML with PHP</title>
 <body>
 <h1>My Example</h1>

 <?php
 //your php code here
 ?>

 <b>Here is some more HTML</b>

 <?php
 //more php code
 ?>


 </body>
 </html>

答案 6 :(得分:1)

你不应该在HTML代码中使用内联PHP,因为:

  1. 在php有机会更改标题之前发送的任何类型的内容(例如,重定向到不同的页面)都无法完成。一旦发送标题即可。
  2. 通过将HTML all放在变量或echo调用中,一次显示all是一种保持代码可读性的好方法,只需要一个php标记。
  3. 如果您使用具有复杂代码的内联PHP,则很容易丢失循环,条件和/或函数开始/结束的位置。
  4. 我的意见是,如果你想在PHP中使用html代码而不必引用它,请使用HEREDOC format

    更新:

    经过一些研究,我发现回显静态HTML对性能不好。请查看有关该主题的this post。简而言之,它解释了您应该使用模板来显示我同意的静态HTML。但是,如果您始终使用数据库中的数据并且数据是动态的,则应使用纯PHP。

    另外,如果你有内置回声的条件语句,PHP将需要为输出做逻辑,所以在条件(在我看来)内回显页面的部分比关闭php mid-conditional更好。

    一如既往,这个话题非常基于意见,性能方面的内联PHP更好。如果你想要可管理性和可读性,那么纯粹的PHP就是你要走的路。 (想象一下1000多行内联PHP并告诉我它比纯PHP更容易阅读)

    在做出决定之前,请先查看this post所有的答案。

    Here是高代表贡献者的另一个好帖子。

答案 7 :(得分:1)

PHP手册说

For outputting large blocks of text, dropping out of PHP parsing mode is generally more efficient than sending all of the text through echo() or print().

简单来说就是

如果您有大量的HTML,请不要使用echo进行打印。 因为所有这些html都会通过PHP解释器,并且需要一些时间(可以忽略不计)才能解析。

答案 8 :(得分:0)

猜猜你想使用PHP将Twig用于视图(显示HTML内容)。

已知Twig比传统的PHP视图更快。也许对此有一点研究有帮助。