我遇到加载html文件的奇怪行为。 require_once
,include
等工作:
require_once 'suche.htm';
但readfile
或file_get_contents
不会
return file_get_contents('suche.htm');
警告:readfile(suche.htm):无法打开流:没有这样的文件或 目录在/ var / www / vhosts / h ...
答案 0 :(得分:3)
<强>描述强>
int readfile ( string $filename [, bool $use_include_path = false [, resource $context ]] )
注意第二个参数
<强>
use_include_path
强>
如果您要在include_path中搜索文件,也可以使用可选的第二个参数并将其设置为 TRUE 。
file_get_contents
有相同的论点。
如果您希望true
/ readfile
使用与file_get_contents
/ require
相同的路径解析,则需要将其设置为include
。
注意,readfile
不会返回字符串,因此您无法在htmlentities
中使用结果
在我看来,相对于当前的PHP脚本文件,使用显式文件路径要好得多。例如
file_get_contents(__DIR__ . '/../suche.htm');