如何在 PHP 中回显 .html 文件的全部内容?
Posted
技术标签:
【中文标题】如何在 PHP 中回显 .html 文件的全部内容?【英文标题】:How can I echo the whole content of a .html file in PHP? 【发布时间】:2012-03-21 08:13:58 【问题描述】:例如,我有一些 sample.html 文件,我想回显该文件名,因此应该显示其内容。
【问题讨论】:
Include
应该这样做。)或readfile()
。
Include whole content of a file and echo it 的可能重复项
【参考方案1】:
如果您想确保 HTML 文件不包含任何 PHP 代码并且不会作为 PHP 执行,不要使用include
或@987654322 @。只需这样做:
echo file_get_contents("/path/to/file.html");
【讨论】:
【参考方案2】:只需使用:
<?php
include("/path/to/file.html");
?>
这也会呼应它。这还具有执行文件中的任何 PHP 的好处。
如果您需要对内容做任何事情,请使用 file_get_contents(),
例如,
<?php
$pagecontents = file_get_contents("/path/to/file.html");
echo str_replace("Banana", "Pineapple", $pagecontents);
?>
这不会执行该文件中的代码,因此如果您希望它起作用,请小心。
我通常使用:
include($_SERVER['DOCUMENT_ROOT']."/path/to/file/as/in/url.html");
这样我就可以在不破坏包含的情况下移动文件。
【讨论】:
感谢您的快速回复:) 你能给我写个例子吗?我编辑了我的问题。谢谢。附言您没有代码后:“只需使用:”? 啊,忘记正确缩进了!readfile
有效,但 include
似乎不适用于图像.....header('Content-Type: image/png'); include('test.png');exit;
显示“损坏”的图像。【参考方案3】:
你应该使用readfile()
:
readfile("/path/to/file");
这将读取文件并将其通过一个命令发送到浏览器。这与以下内容基本相同:
echo file_get_contents("/path/to/file");
除了file_get_contents()
可能会导致脚本在处理大文件时崩溃,而readfile()
不会。
【讨论】:
有什么方法可以先检查文件夹中是否存在该文件,如果存在,则执行上述命令?file_exists()
可以检查该名称的文件或目录是否存在,is_file()
可以用于检查文件是否存在并且是常规文件。在您的情况下,可能应该使用is_file()
。
奇怪,但是当我将 file_get_contents 更改为 readfile 时,它在底部添加了 1191,我不知道这个数字是从哪里来的 :) 有什么想法吗?
你使用echo readfile()
吗?因为readfile()
返回的是文件的长度(好像是1191字节),如果你在readfile()
之前加上echo
,它会在你打印文件之后打印长度。只需删除 echo
即可。 :)
哈哈哈,多么简单而正确的解释,有趣的是 :) 非常感谢(也感谢其他人),你帮了我很多,再次感谢。以上是关于如何在 PHP 中回显 .html 文件的全部内容?的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 sleep() 在 while 循环中回显某些内容?