2010-01-24 80 views
0

我想知道,有没有什么方法可以在不使用include函数的情况下将HTML页面插入到PHP中?我不想使用外部html文件,我想直接将html编码写入php编码中。如何使用PHP插入HTML页面?

感谢您的帮助!

回答

2

交错显示它:

<?php 

// Some php code. 

?> 

<html> 
    <head> 
    <title>Hello!</title> 
    </head> 
    <body> 
    <h1>Header</h1> 
    <?php /* More php code. */ ?> 
    <p>Blah!</a> 
    </body> 
</html> 
<?php /* Even more php. */ ?> 

从一个最佳实践点,不过,避免这样做 - 有在同一个地方的业务逻辑(PHP)和演示(HTML),使维护困难。

编辑:为了解决您的评论。你可以做同样的方式,或使用echo

<?php if (x == 5) { ?> 
    <p>Blah!</a> 
<?php } else { 
    echo '<p>Bleh</p>'; 
} ?> 
+0

我需要它被包含在php编码中。在if语句中。我需要它更像 <?PHP 如果(VAR =真){ YAY } – 2010-01-24 11:03:43

+0

使用最多的例子就可以轻松实现你正在进一步您的评论要求.... – DoctorLouie 2010-01-24 11:05:11

+1

@ Sean Booth:控制语句*的替代语法更容易阅读:http://www.php.net/manual/en/control-structures.alternative-syntax.php – 2010-01-24 11:10:59

0

这是非常不好的习惯来混合HTML和PHP(用于不仅仅是输出控制更多),但在这里你去:

$html = "<div>This is HTML</div>" 
echo $html; 

Heredoc语法:

$html = <<<EOF 
<div> 
    <p> 
     Some longer HTML 
    </p> 
</div> 
EOF; 
echo $html; 

或使用alternative syntax for control statements如果输出取决于一些条件(或者,如果通过阵列等环。)(其为远比构建HTM更好l对于字符串):

<?php if($foo): ?> 

    <div> Some HTML output </div> 

<?php else: ?> 

    <div> Some other HTML </div> 

<?php endif; ?> 

或只是

<?php //PHP here ?> 

<div>HTML</div> 

<?php //more PHP ?> 

<div>more HTML</div> 

<?php //even more PHP ?> 
0

如果您需要包括基于HTML条件的片段,可以这样交错的代码。在这种情况下,它的方便使用alternative syntax for loop controls

<?php if ($var): ?> 
<html> 
<title>YAY</title> 
</html> 
<?php endif; ?> 

因此代码更易懂,并且保留HTML语法着色(如果你的编辑器支持的话)。