thinkphp5使用multiple属性多文件上传为什么总是会报错?
为什么thinkphp5使用multiple属性实现多文件上传为什么总是会报错?
报错信息:
HTML代码:
<input name="file" type="file" multiple/>
<input type="submit" value="上传" class="btn btn-primary">
php代码:
if($files = request()->file('file'))
foreach ($files as $file)
{
$info = $file->move(ROOT_PATH . 'public' . DS .'static','');
if($info){
$path_parts = pathinfo(ROOT_PATH . 'public' . DS . 'static' .'\\'. $info->getFilename());
//获取文件类型,名称及大小
$type=$path_parts['extension'];
$name=$path_parts['filename'];
$size=(filesize(ROOT_PATH . 'public' . DS . 'static' .'\\'. $info->getFilename())>>10).'KB';
$data=['name'=>$name,'type'=>$type,'size'=>$size];
Db::table('doc')->insert($data);
$this->success("上传成功!");
}else{
//上传失败获取错误信息
$this->error($file->getError());
}
}
我是看着thinkphp5的手册用的,为什么move函数那块总是报错?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
对于一个input使用多文件上传的,除了要加上multiple属性,name属性要改成name="file[]"
而后台的php代码不变
tp5的多文件不是指这个 <input name="file" type="file" multiple/> .
是指
<input type="file" name="file[]" />
<input type="file" name="file[]" />
<input type="file" name="file[]" />