2012-03-27 87 views
-5

我已经看到几个PHP脚本包装HTML标签。遵循这种技术有没有什么好处,或者更好地保持它们的独立性。为什么在PHP标签中包装HTML代码

DEMO(page.php文件)

<?php 
    <html> 
    <?php 
    <head></head> 
    <body> 
    ?> 

    </body> 
    <?php 

    ?> 
    </html ?> 

    ?> 
+1

您给出的示例没有任何好处,因为它会产生解析器错误而不显示任何内容。 – David 2012-03-27 13:15:37

+1

@Brian:但是由于一个完全无效的演示,他所要求的很不清楚。他说他在练习中看到了一些东西,但是他所展示的东西不能用于练习。那么他看到了什么?他在问什么? – David 2012-03-27 13:18:00

回答

4

嗯,这是完全无效的,是考虑意外<的会立即失效。

5

您的示例无效,将HTML内容放入您的PHP脚本的唯一方法是将其输出为echo还是print

PHP是一种服务器端脚本语言,您需要尊重它的语法或脚本不会编译。

1

你不能和我会建议你尽可能地保持它的分离(有一个模板引擎的原因,如Smarty),以保持你的代码逻辑和清晰(并且......非常有意义)

0

你所拥有的代码根本不起作用。如果你打算做这样的事情,它应该更像:

<?php 
    echo "<html> 
     <head></head> 
     <body> 

     </body> 
    </html>"; 
?> 

但这真的只有有用的,如果你打算生成为了使用PHP变量或有用的PHP函数中使用PHP的HTML代码,等等:

<?php 
    if ($_GET["test"] == "hello") 
     $var = "1"; 
    else 
     $var = "2"; 

    echo "<html> 
     <head></head> 
     <body> 
      var is set to {$var} 
     </body> 
    </html>"; 
?> 

这当然是一个非常基本的例子。

1

您不能在php标签中嵌套php标签,就像您在示例中所做的那样。

除此之外:它可能取决于您的需求。一般来说,尽量让PHP逻辑与HTML分开。

我曾经在HTML代码之间混合了很多php块,并且我为每一行想要存储的HTML代码使用了很多PHP字符串。直到那时我才意识到这也适用一天 - 注意我用一个PHP代码块在整个页面:

<?php 

    /* php logic here */ 

    $html = ' 

    /* Cut and past all your normal HTML code here, but make sure double quotes are used for all the attributes. */ 

    '; 

echo $html; 

?> 
相关问题