PHP "file_get_contents()" 函数 return 空
PHP "file_get_contents()" function return null
我在CentOS和nginx上使用函数"file_get_contents"时遇到了问题。
error_reporting(E_ALL);
$file = "/srv/http/php/cms/extern/ip/pc.htm";
if (@is_file($file) === false) {// it is true;
$result['error'] = 'no file';
}
if (@fopen($file, "r") === false) { // it is true
@fclose($htmlFilePath);
}
$htmlContent = file_get_contents($file); // return null
然后我在浏览器中打开 htm 文件,它可以 work.I 搜索 google 中的内容,然后我验证 php.ini:
中的选项
allow_url_fopen = On;
并且禁用的功能列表没有包含那个;
然后我重启了nginx和centOS,但是还是不行-_-!!
请帮忙告诉一下bug.Thanks在哪里!
我以前遇到过同样的问题。我通过添加编码字符集解决了它。就我而言,我添加了 UTF-8 字符集。浏览器可能会对文件进行编码,但 nginx 和 centOS 不会。
- 在head标签之间添加编码元标签。
如果它不起作用,我建议也用完整的 URL 试试。 PHP 不会将 URL 识别为亲戚 URL。
我在CentOS和nginx上使用函数"file_get_contents"时遇到了问题。
error_reporting(E_ALL);
$file = "/srv/http/php/cms/extern/ip/pc.htm";
if (@is_file($file) === false) {// it is true;
$result['error'] = 'no file';
}
if (@fopen($file, "r") === false) { // it is true
@fclose($htmlFilePath);
}
$htmlContent = file_get_contents($file); // return null
然后我在浏览器中打开 htm 文件,它可以 work.I 搜索 google 中的内容,然后我验证 php.ini:
中的选项allow_url_fopen = On;
并且禁用的功能列表没有包含那个;
然后我重启了nginx和centOS,但是还是不行-_-!!
请帮忙告诉一下bug.Thanks在哪里!
我以前遇到过同样的问题。我通过添加编码字符集解决了它。就我而言,我添加了 UTF-8 字符集。浏览器可能会对文件进行编码,但 nginx 和 centOS 不会。
- 在head标签之间添加编码元标签。
如果它不起作用,我建议也用完整的 URL 试试。 PHP 不会将 URL 识别为亲戚 URL。