如何在没有pars的情况下回显php文件?

时间:2014-08-22 07:00:02

标签: php

如何阅读php文件并在html文件中回显? 我尝试使用readfile()file() file_get_content()来阅读php文件。
但当我回复file_string时,它会被解析,然后显示出来 我怎样才能防止包含stirng代码的php var。

这里是我的代码:

<?php
$path = '..../ex.php';
$source = fopen($path , "r");
echo fread($source,filesize($path ));
fclose($source);
?>

如何在没有编译或解析的情况下回显$ source。

4 个答案:

答案 0 :(得分:2)

使用此功能

<?php
    echo htmlspecialchars($text);
?>

php.net/htmlspecialchars

答案 1 :(得分:1)

fread应该可以正常工作。请记住,当您使用echo时,它会打印<?php开始标记,而在呈现的页面中则无法显示。

要测试它,只需尝试使用var_dump

$content = fread($source,filesize($path));
var_dump($content);

答案 2 :(得分:1)

我会想到代码没有完全显示在HTML页面中,因为浏览器正试图将<?php解释为HTML标记。解决方案是 HTML编码任何可能包含HTML中具有特殊含义的字符的文本:

echo htmlspecialchars(file_get_contents('..../ex.php'));

请参阅The Great Escapism (Or: What You Need To Know To Work With Text Within Text)

答案 3 :(得分:1)

使用此

$path = 'ex.php';
$source = fopen($path , "r");
echo "<textarea style='border:0px; overflow: hidden; width:100%; height:100% '>";
echo fread($source,filesize($path ));
echo "</textarea>";
fclose($source);