我偶然发现了以下的世俗性:
$handle = fopen(realpath(“../ folder / files.php”),“r”);
无法读取文件,但只要从文件中删除php标签,
它变得可读,我的脚本在页面上打印非空文件内容.
此外,file.php永远不会执行,所以我想知道为什么这是问题.
我猜不知道Apache或PHP不会让包含php标签的文件只读取PHP文本.
如何为我的特定文件启用它(当然在全球范围内执行它会不安全)?
使用PHP 5.2.x和Apache 2.0
解决方法:
我知道了.我正在使用Google Chrome来调试页面,我意识到在查看源代码时,Chrome会出于某种原因隐藏PHP标记.我在Firefox上运行了相同的测试,查看源代码证明一切正常.
以下是测试详情:
码:
$fh = fopen("test.php","r");
while ($line = fgets($fh)){
echo $line;
}
要读取的文件(test.php):
testing <?php testing2 ?> testing3
渲染(在Chrome和Firefox上):
testing testing3
查看源代码(使用firefox):
testing <?php testing2 ?> testing3
查看源代码(使用Chrome – 我的错误来源):
testing testing3