php:file\u get\u内容正在剥离php代码

php:file\u get\u内容正在剥离php代码,php,Php,我试图在不渲染的情况下将内容归档并以字符串形式输出php代码。想法是获取原始的未渲染文件内容,以便可以在文本区域中编辑它们 // file "foo.php" I'm needing the contents of <h1>foo</h1> <? include 'path/to/another/file' ?> // php file that's calling the file_get_contents <?php echo file_g

我试图在不渲染的情况下将内容归档并以字符串形式输出php代码。想法是获取原始的未渲染文件内容,以便可以在文本区域中编辑它们

// file "foo.php" I'm needing the contents of
<h1>foo</h1>
<? include 'path/to/another/file' ?>

// php file that's calling the file_get_contents
<?php
    echo file_get_contents('foo.php');
?>
//文件“foo.php”我需要
福
//调用文件\u get\u内容的php文件
上面的代码剥离了foo.php中的php include,它输出:

<h1>foo</h1>
foo
有人知道我如何将foo.php内容作为未呈现的原始字符串获取,并将输出到哪里吗

<h1>foo</h1>
<? include 'path/to/another/file' ?>
foo

非常感谢您的帮助

据我所知,只有在同一台服务器上才能获取php内容。 确保您正在尝试访问本地托管的文件,而不是远程文件,它应该可以工作

另外,如果您尝试回显代码,它将尝试解析它,因此通过
htmlspecialchars($source)
传递它,它应该可以工作

大概是这样的:

<?php
    echo "<pre>";
    echo htmlspecialchars(file_get_contents('file.php'));
    echo "</pre>";
?>

将回显php文件的格式化源代码,包括注释和其中的任何其他文本,而不进行解析。由于它看起来对您很重要,我还想说它显示在DOM中当然,因为它不再是代码,现在是文本。您可以将其放置在容器中,设置样式,并使用它执行任何操作。

您还可以执行以下操作:


您是否查看了生成的源代码以确保内容真的消失了?您所做的应该有用。我能想到的唯一失败的情况是,如果您以URL()的形式访问foo.php…Doh!好的,它显示在源代码中,但不在DOM中??Victor,是的,它是一个本地文件。Charles,有没有一种方法可以让php代码字符串显示在DOM中?工作得很好。谢谢这场混乱!2010年的答案更完整、更好。我认为你的答案并没有真正解决OP想要解决的问题。参见上面Juan Cortes的回答。@benny我在想,“我正试图将内容归档并以字符串形式输出php代码,而不进行渲染”,这正是
高亮显示
指令的要点,对于未来的用户来说,这将是一个有用的工具。
<?php 

highlight_file('file.php');
// or alternatively
echo highlight_file('file.php',true);