获取上载文件的内容而不进行存储

时间:2013-01-15 04:01:14

标签: php upload

假设用户在我的网站上使用PHP上传文本文件。我想得到这个文本文件的内容,然后处理它们,而不必将文件/ do move_uploded_file()存储在磁盘上的任何地方,所以当我完成时我不必处理删除它它等等。

有没有办法使用tmp_name或任何其他信息获取文件的内容?

2 个答案:

答案 0 :(得分:4)

您可以使用$ _FILES Super global array检索与上传文件相关的信息。

$ _ FILES ['input-field-name'] ['tmp_name']将在服务器上存储上传文件的临时副本名称

因此,您可以使用file_get_contents()函数检索上传文件的内容,方法是将$ _FILES ['input-field-name'] ['tmp_name']的值作为参数传递。

脚本执行终止后删除临时副本。

请参阅下面提到的示例代码段。

<?php if($_SERVER['REQUEST_METHOD']=='POST')
      {
         if(isset($_FILES['input-field-name']))
         {

         $file_content=file_get_contents($_FILES['input-field-name']['tmp_name']);
         }
      }
  ?>

答案 1 :(得分:3)

在这种情况下:

file_get_contents() tmp_name $_POST['filename']['tmp_name']部分的

{{1}}可能就足够了。

假设文件的输入名称属性值为'filename'。

相关问题