不解析的Php文件包括

时间:2013-04-08 16:22:42

标签: php parsing include

我的目标是在服务器上自动创建一个包含以下html / php的文件 它确实做了,但它包括php包括所以当页面构建时它包括包含的所有内容。

我希望include("../includes/right.html");能够独处 在生成的页面中,但我想要解析其他php变量。

<?php
// Start the buffering //
ob_start();
?>

<?php echo $name; ?>

test text line one

<?php include("../includes/right.html"); ?>

test text line two

<?php
// Putting content buffer into file //
file_put_contents('mypage.html', ob_get_contents());
?>

2 个答案:

答案 0 :(得分:0)

您需要将该行作为HTML转义,因此它不会通过PHP解析器传递,例如。

<?php
// Start the buffering //
ob_start();
?>

<?php echo $name; ?>

test text line one

&lt;?php include(&quot;../includes/right.html&quot;); ?&gt;

test text line two

<?php
// Putting content buffer into file //
file_put_contents('mypage.html', ob_get_contents());
?>

答案 1 :(得分:0)

直接来自http://www.php.net/manual/en/language.types.string.php#language.types.string.syntax.nowdoc的PHP手册 这称为nowdoc语法,随PHP 5.3一起提供。对于类似的事情,这通常是最好的做法。

echo <<<'EOT'
My name is "$name". I am printing some $foo->foo.
Now, I am printing some {$foo->bar[1]}.
This should not print a capital 'A': \x41
EOT;
'EOT'和EOT之间的任何内容;将在页面上呈现为文本而不进行任何解析。