mirror of
https://gitee.com/fastadminnet/framework.git
synced 2026-07-06 15:02:47 +08:00
改进Request类的file方法的多文件上传获取支持
This commit is contained in:
@@ -809,44 +809,43 @@ class Request
|
|||||||
if (!empty($files)) {
|
if (!empty($files)) {
|
||||||
// 处理上传文件
|
// 处理上传文件
|
||||||
$array = [];
|
$array = [];
|
||||||
$n = 0;
|
|
||||||
foreach ($files as $key => $file) {
|
foreach ($files as $key => $file) {
|
||||||
if (is_array($file['name'])) {
|
if (is_array($file['name'])) {
|
||||||
|
$item = [];
|
||||||
$keys = array_keys($file);
|
$keys = array_keys($file);
|
||||||
$count = count($file['name']);
|
$count = count($file['name']);
|
||||||
for ($i = 0; $i < $count; $i++) {
|
for ($i = 0; $i < $count; $i++) {
|
||||||
$array[$n]['key'] = $key;
|
if (empty($file['tmp_name'][$i])) {
|
||||||
foreach ($keys as $_key) {
|
|
||||||
$array[$n][$_key] = $file[$_key][$i];
|
|
||||||
}
|
|
||||||
$n++;
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
$array = $files;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if ('' === $name) {
|
|
||||||
// 获取全部文件
|
|
||||||
$item = [];
|
|
||||||
foreach ($array as $key => $val) {
|
|
||||||
if ($val instanceof File) {
|
|
||||||
$item[$key] = $val;
|
|
||||||
} else {
|
|
||||||
if (empty($val['tmp_name'])) {
|
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
$item[$key] = (new File($val['tmp_name']))->setUploadInfo($val);
|
$temp['key'] = $key;
|
||||||
|
foreach ($keys as $_key) {
|
||||||
|
$temp[$_key] = $file[$_key][$i];
|
||||||
|
}
|
||||||
|
$item[] = (new File($temp['tmp_name']))->setUploadInfo($temp);
|
||||||
|
}
|
||||||
|
$array[$key] = $item;
|
||||||
|
} else {
|
||||||
|
if ($file instanceof File) {
|
||||||
|
$array[$key] = $file;
|
||||||
|
} else {
|
||||||
|
if (empty($file['tmp_name'])) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
$array[$key] = (new File($file['tmp_name']))->setUploadInfo($file);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return $item;
|
}
|
||||||
|
if (strpos($name, '.')) {
|
||||||
|
list($name, $sub) = explode('.', $name);
|
||||||
|
}
|
||||||
|
if ('' === $name) {
|
||||||
|
// 获取全部文件
|
||||||
|
return $array;
|
||||||
|
} elseif (isset($sub) && isset($array[$name][$sub])) {
|
||||||
|
return $array[$name][$sub];
|
||||||
} elseif (isset($array[$name])) {
|
} elseif (isset($array[$name])) {
|
||||||
if ($array[$name] instanceof File) {
|
return $array[$name];
|
||||||
return $array[$name];
|
|
||||||
} elseif (!empty($array[$name]['tmp_name'])) {
|
|
||||||
return (new File($array[$name]['tmp_name']))->setUploadInfo($array[$name]);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return null;
|
return null;
|
||||||
|
|||||||
Reference in New Issue
Block a user