$ _FILES数组中的数据在哪里?

时间:2013-11-18 12:27:09

标签: php file

我理解将文件上传到服务器和2D $ _FILES数组。

您可以访问

$_FILES['myFile']['name'], $_FILES['myFile']['tmp_name']

我不明白的是如何获取上传的文件数据?如果我想用文件数据填充变量,我该怎么做?

$fileVar = $_FILES['myFile'];

那会有用吗?我已经尝试过,它似乎没有用,虽然它可能是其他一些问题。无论如何这对我来说有点混乱,我想要的只是文件数据。

$_FILES['myFile']['name'], $_FILES['myFile']['tmp_name']等很棒,但数据在哪里?

3 个答案:

答案 0 :(得分:6)

上传的文件及其数据,它以$_FILES[...]['tmp_name']中的路径存储在文件中。那是上传的文件。要获取其数据,请像任何其他文件一样阅读:

$data = file_get_contents($_FILES['myFile']['tmp_name']);

答案 1 :(得分:0)

您应首先学习有关handling file uploads的文档。

发布的文件默认存储在服务器的默认临时目录中。如果尚未移动或重命名,它们将在请求结束时从临时目录中删除。

如果您想将文件内容作为字符串获取,可以尝试:

$fileContents = file_get_contents( $_FILES['userfile']['tmp_name'] );

答案 2 :(得分:0)

你是对的。

$fileVar = $_FILES['myFile']; $fileVar是您需要的数组。

$_FILES['myFile']['tmpname']只是一个包含上传文件的临时路径的字符串。