Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/loops/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 无法回显使用fread读取的文件_Php - Fatal编程技术网

Php 无法回显使用fread读取的文件

Php 无法回显使用fread读取的文件,php,Php,我试图读取一个小的html文件,但当我回显结果时,我什么也看不到。读取/显示代码为: $headerName = "header.html"; $header = fread($header_fp,filesize($headerName)); $header_filesize = filesize($headerName); echo "<pre>"; echo ("<br />header: file size = $heade

我试图读取一个小的html文件,但当我回显结果时,我什么也看不到。读取/显示代码为:

    $headerName = "header.html";
    $header = fread($header_fp,filesize($headerName));
    $header_filesize = filesize($headerName);
    echo "<pre>";
    echo ("<br />header: file size = $header_filesize data = $header");
    echo "</pre>";
$header\u filesize打印为110,这是正确的

我正在读取的header.html文件是:

echo htmlspecialchars($header, ENT_QUOTES, 'UTF-8');
以上是我期待看到的回声

有人知道为什么回音没有显示文件内容吗


谢谢

您尝试查看源代码了吗?HTML在浏览器中呈现


也就是说,你为什么要这么做?只要使用或如果你想运行PHP。

你会转义html字符吗?如果您只是回显内容,它将作为普通html处理,您无法在输出中看到它

试试这个:

$header_handle = fopen($header_name, "r");
$header = fread($header_handle, filesize($header_name);
// ...
fread不接受文件名,而接受文件系统指针

您必须先使用fopen,然后才能使用:

你的错误是忘了打开文件


别忘了fclose$header\u handle

我很确定您正在浏览器中渲染它。因此它呈现为HTML。检查源代码或htmlspecialchars,如果在浏览器中查看html的源代码,则可能会看到它。如果您正在寻找一个稍微简单一点的解决方案来读取文件,请尝试file_get_contents,但这与您正在做的事情没有太大区别。否$header\u fp in$header=fread$header\u fp,文件大小$headerName;是一个文件指针。我没有显示$header\u fp=fopen$headerName,r;然后在将来发布您的完整代码please.readfile,并将输出包含回显到浏览器中。那根本不是我想做的。我想读取该文件,将其与服务器上已安装的内容组合,然后将组合写入一个新文件。然后尝试“是”,htmlspecialchars按我的需要显示HTML。正如大家所说,问题在于回音会传到浏览器,而浏览器不会显示标签。
$header_handle = fopen($header_name, "r");
$header = fread($header_handle, filesize($header_name);
// ...