file_get_contents()如果包含""则无法读取文件。内

时间:2016-08-25 10:45:03

标签: php json file file-get-contents

我正在将.json文件上传到服务器并使用file_get_contents(),从中读取内容。该文件包含&#34; <body>&#34;作为json键的值。 file_get_contents()函数返回一个

<script type="text/javascript">...</script>

而不是字符串。

  • 我试过mb_convert_encoding($string, 'HTML-ENTITIES', "UTF-8");
  • 我尝试了htmlentities()

  • 我尝试过简单fopen读取模式和输出

  • 我尝试了mb_convert_encoding($content, 'UTF-8',mb_detect_encoding($content, 'UTF-8, ISO-8859-1', true));

我尝试了简单的文字&#34; abc <body> dfg&#34;在文本文件中并执行file_get_contents()。 所有都失败并给出相同的输出。任何帮助将不胜感激。 我不能使用cURL,因为文件位于我的根目录之外。

try{
    if (0<$_FILES['file']['error']){
             echo 'Err: ' . $_FILES['file']['error'] . '<br>';
     }else{
          $filename = time() . $_FILES['file']['name'];
            move_uploaded_file($_FILES['file']['tmp_name'], '/tmp/'.$filename);
     }
     echo file_get_contents('/tmp/'.$filename);
}catch (Exception $e){
        echo $e->getMessage();
}

enter image description here

该文件包含字符串&#34; blah blah <body> blah blah&#34; 输出:blah blah <script>一些JS代码</script><body>等等等等

2 个答案:

答案 0 :(得分:1)

此JavaScript代码属于New Relic监控系统。只要代码在您的服务器上处于活动状态,它就会被PHP / Apache模块自动附加。如果您自己管理服务器,请查看服务器配置并将其禁用,否则请联系托管支持团队。

答案 1 :(得分:0)

您正在将RAW文件内容输出到浏览器。请改用var_dump(file_get_contents('/tmp/'.$filename))