改进Input类和request类的file方法

This commit is contained in:
thinkphp
2016-05-10 10:49:32 +08:00
parent c305b11d1b
commit 4a3ddd4353
2 changed files with 10 additions and 8 deletions

View File

@@ -209,15 +209,17 @@ class Input
/** /**
* 获取$_FILES * 获取$_FILES
* @param string $name 数据名称 * @param string $name 数据名称
* @param array $files 上传文件
* @return \think\File|array * @return \think\File|array
*/ */
public static function file($name = '') public static function file($name = '', $files = [])
{ {
if (!empty($_FILES)) { $files = $files ?: (isset($_FILES) ? $_FILES : []);
if (!empty($files)) {
if ('' === $name) { if ('' === $name) {
// 获取全部文件 // 获取全部文件
$file = []; $file = [];
foreach ($_FILES as $name => $val) { foreach ($files as $name => $val) {
if (empty($val['tmp_name'])) { if (empty($val['tmp_name'])) {
continue; continue;
} }
@@ -230,15 +232,15 @@ class Input
} }
} }
return $file; return $file;
} elseif (!empty($_FILES[$name]['tmp_name'])) { } elseif (!empty($files[$name]['tmp_name'])) {
if (is_array($_FILES[$name]['tmp_name'])) { if (is_array($files[$name]['tmp_name'])) {
$file = []; $file = [];
foreach ($_FILES[$name]['tmp_name'] as $item) { foreach ($files[$name]['tmp_name'] as $item) {
$file[] = new File($item); $file[] = new File($item);
} }
return $file; return $file;
} else { } else {
return new File($_FILES[$name]['tmp_name']); return new File($files[$name]['tmp_name']);
} }
} }
} }

View File

@@ -445,7 +445,7 @@ class Request
*/ */
public function file($name = '') public function file($name = '')
{ {
return Input::data($this->file ?: $_FILES, $name); return Input::file($name, $this->file ?: $_FILES);
} }
/** /**