文件上传
2019-08-03 11:03
274 查看
[code]<?php /** * 文件上传 * 2019.7.28 * QQ:748507607 */ namespace app\common\model; class UploadFile { /** * 单或多图片上传 * @param file_name string 文件名称 name="file_name[]" * @return url string 多文件或者单文件的url "/uploads/312312.jpg,/uploads/321312.jpg,/uploads/3123123.jpg" */ public function uploadfile() { $file_name_image = $_FILES['file_name']; if(empty($file_name_image['name'][0]) || empty($file_name_image['tmp_name'][0])) return ['code' => '400', 'msg' => '未选择上传图片']; $i=0; foreach ($_FILES as $file) { if(is_string($file['name'])) { $files[$i] = $file; $i++; }elseif(is_array($file['name'])) { foreach ($file['name'] as $key => $value) { $files[$i]['name'] = $file['name'][$key]; $files[$i]['type'] = $file['type'][$key]; $files[$i]['tmp_name'] = $file['tmp_name'][$key]; $files[$i]['error'] = $file['error'][$key]; $files[$i]['size'] = $file['size'][$key]; $i++; } } } //处理图片 $file_str = ""; foreach ($files as $k => $v) { $tmpname = $v['tmp_name']; //文件临时存储路径 $filename = uniqid("Mt").strrchr($v['name'],'.'); //重新命名文件名 $fileurl = ROOT_PATH."public".DS."uploads".DS."images".DS.date('Ymd').DS; //文件存储路径设置 if(!file_exists($fileurl)) { mkdir($fileurl,0777,true); } if(is_uploaded_file($tmpname)){ //临时文件存在 $mvd = move_uploaded_file($tmpname,$fileurl.$filename); //移动到自定义的位置 } $file_name = str_replace("\\", '/', DS."uploads".DS."images".DS.date('Ymd').DS.$filename); $file_str .= $file_name.","; } $file_str = substr($file_str,0,strlen($file_str)-1); // echo $file_str;die; return ['code' => 200, 'msg' => '上传成功', 'url' => $file_str]; } }
相关文章推荐
- [转自:My Program life]使用MFC提供的Http类下载和上传文件
- 单文件上传
- 在Struts 2中实现文件上传
- asp.net 上传Excel文件时出现: Microsoft JET Database Engine 未指定的错误
- 简单解决新浪SAE无法上传文件的问题
- 修改nginx+php上传文件大小限制
- 文件上传操作
- [导入]不经保存,直接读取上传文件的内容
- php5与mysql5 web 开发技术详解-14 php文件上传
- struts2文件上传.
- 上传excel文件
- 利用XShell上传、下载文件(使用sz与rz命令)
- Retiofit配合RxJava单文件上传
- 多文件批量上传,h5代码和SpringMVC后台代码示例
- 借助WebService实现多线程上传文件
- tomcat8热部署文件上传
- CKFinder 1.4.3 任意文件上传漏洞
- 一个java上传文件的组件
- ADF文件导出和上传功能浅谈
- django上传文件