如何在 PHP 中回显 .html 文件的全部内容?

Posted

技术标签:

【中文标题】如何在 PHP 中回显 .html 文件的全部内容?【英文标题】:How can I echo the whole content of a .html file in PHP? 【发布时间】:2012-03-21 08:13:58 【问题描述】:

有没有办法在 php 中回显 .html 文件的全部内容?

例如,我有一些 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 循环中回显某些内容?

如何在 PHP 中回显 XML 文件

在 HTML/PHP 中回显多个图像 [关闭]

如何在bash中回显包含未转义的美元符号的变量

在 BigCommerce HTML href 中回显 PHP(自引用 hreflang 标签)

使用 html 和 javascript 来允许是不是调用表单操作不起作用(在 php 中回显)