我在使用文件上传 HTML 表单和一些 PHP 来处理输入时感到困惑。在表单中,我有两个图像文件选择。上传 .png 文件时,我可以使用 $_FILES 获取文件大小等。但是,当我尝试上传 .jpg 文件时,我无法获得比文件名更多的信息,没有大小、类型、临时名称。
当一次上传两个文件时,.png 和 .jpg,一切都适用于 .png 文件,但不适用于 .jpg。
我在这里想念什么?将 $_FILES 与 .jpg 文件类型或我不知道的其他内容一起使用时是否有任何“限制”?
示例代码:
if (isset($_FILES['upload1'])) { // JPG FILE
$fileName1 = $_FILES['upload1']['name'];
$fileSize1 = $_FILES['upload1']['size'];
echo $fileName1;
echo $fileSize1;
}
if (isset($_FILES['upload2'])) { // PNG FILE
$fileName2 = $_FILES['upload2']['name'];
$fileSize2 = $_FILES['upload2']['size'];
echo $fileName2;
echo $fileSize2;
}
输出类似(不带括号):
"filename1.jpg" "0" "filename2.png" "12313"
print_r($_FILES) 输出:
Array (
[upload1] => Array (
[name] => volvo1.png
[type] => image/png
[tmp_name] => C:\wamp\tmp\php14AD.tmp
[error] => 0
[size] => 6380)
[upload2] => Array (
[name] => IMG0379.JPG
[type] => [tmp_name] =>
[error] => 1
[size] => 0)
)