request->file('image')上传多个图片只能获取到一个,不支持多文件
文件路径:vendor/workerman/workerman/Protocols/Http/Request.php
if ($files_encode_string) {
parse_str($files_encode_string, $this->_data['files']);
\array_walk_recursive($this->_data['files'], function (&$value) use ($files) {
$value = $files[$value];
});
}
parse_str在解析类似name=eeeeeeeeee&content=ffffffffff&image=0&image=1的时候image是两张图片存在覆盖问题,下面是我的修复代码,该问题消失,但是返回的对象是数组,不确定这是不是为了简化数据结构方便使用,这样设计的,所以发帖询问
if ($files_encode_string) {
foreach (explode('&', $files_encode_string) as $item) {
if ($item === '') {
continue;
}
list($name, $index) = explode('=', $item);
$this->_data['files'][$name][] = $index;
}
\array_walk($this->_data['files'], function (&$value) use ($files) {
$_value = [];
foreach ($value as $name => $index) {
$_value[$name] = $files[$index];
}
$value = $_value;
});
}
换成"image[]"
卧槽,撸代码脑子都木了,舍近求远,犯下不可饶恕的罪孽,今天不宜再写代码了
这是真的,每天敲代码时间久了,后面大脑自己就偷懒了,生理问题,很难搞
标记问题失效,可能得吃脑白金了