现在我已经问了两次,并且我已经回复说我应该尽可能地将PHP与HTML分开。而不是使用:
<?php
echo "<p>The value of x is $valuex greater.</p>";
?>
我应该使用:
<p>The value of x is <?php echo $valuex; ?> greater.</p>
除了格式之外我还应该知道吗?
答案 0 :(得分:1)
第二个需要echo
,
<p>The value of x is <?php echo $valuex; ?> greater.</p>
或者简单地说,
<p>The value of x is <?=$valuex ?> greater.</p>
阅读: What's the best way to separate PHP Code and HTML? 。另请阅读Escaping From HTML。
答案 1 :(得分:1)
PHP的一个独特之处在于,它既可以用于服务器端语言,也可以用于模板语言。理想情况下,您的代码将分为控制器和视图,其中您的控制器是纯 PHP(没有任何HTML),并且您的视图主要是 HTML(使用最少的PHP)。当您编写控制器时,PHP就像任何其他服务器端语言一样。但是当你编写一个视图时,PHP就变成了一种模板语言,在这种情况下,HTML应该统治。
将两者分开的另一个好理由是语法突出显示。在您的第一个示例中,大多数编辑器都不会意识到字符串中的文本实际上是HTML,因此他们不知道应用语法突出显示。这意味着您的代码可能难以阅读,从而使后续开发人员的生活变得困难。
答案 2 :(得分:1)
区别在于:
<?php $valuex = 6; ?>
<p>The value of x is <?php echo $valuex; ?> greater.</p>
这里你需要只回显php变量部分。
<?php
echo "<p>The value of x is $valuex greater.</p>";
?>
在这里你需要回应整个部分。
答案 3 :(得分:0)
两种情况下的输出都是相同的。
第一个例子是PHP输出HTML代码 第二个例子是里面有PHP的HTML代码 “理想”的例子就是:
<p>The value of x is <?=$valuex?> greater.</p>
答案 4 :(得分:0)
在第一个上改变语法,如
<?php
echo "<p>The value of x is ".$valuex." greater.</p>";
?>
并在第二个更改为回显值
<p>The value of x is <?php echo $valuex; ?> greater.</p>
但两种符号都相同,并且相同
答案 5 :(得分:0)
这样做的原因是,坦率地说,您希望始终尽可能灵活。然而,将你的php与html混合意味着你的php-core与你的模板混在一起,因此你将有更多的时间来维护,改变&amp;提供不同的模板/语言等。因此总是将它分开。
答案 6 :(得分:0)
分离它们时,维护HTML和PHP代码要容易得多。