php
  • nginx
  • file-get-contents
  • 2016-08-03 182 views 0 likes 
    0

    我在CentOS和nginx上使用函数“file_get_contents”时遇到了麻烦。PHP“file_get_contents()”函数返回null

    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文件浏览器时,它可以干活在谷歌搜索的东西,那么我确认在php.ini中的选项:

    allow_url_fopen = On; 
    

    和残疾人的功能列表唐”没有包括那个;

    然后我重新启动nginx和centOS。但它不能工作-_-!

    请帮忙,告诉错误在哪里。谢谢!

    +0

    您确定有内容吗?你也可以设置'ini_set('display_errors',1);'开始查看是否有错误弹出。 – Janno

    +0

    file_get_contents函数仅在使用完整网址时才起作用。设置你可以在浏览器中打开的网址 –

    +0

    @Janno感谢您的建议,但它不会报告任何错误 –

    回答

    0

    我以前遇到同样的问题。我通过添加编码字符集来解决它。在我的情况下,我添加了UTF-8字符集。浏览器可能会编码文件,但nginx和centOS不是。

    • 在头标签之间添加编码元标签。

    如果它不起作用,我会建议尝试一个完整的URL。 PHP不会将URL识别为相对URL。

    相关问题