ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
``` 上传方法: //图片上传 public function upload(){ //判断文件上传没有错误 if ($_FILES["file"]['error'] == 0){ //获取文件 $file = request()->file('file'); if($file){ //获取图片路径 $filepath = \think\facade\Env::get("root_path")."public/upload"; //验证后缀,移动到upload文件夹 $info = $file->validate(['ext'=>'jpg,png,gif,jpeg'])->move($filepath); if ($info){ //文件名 $picname = $info->getSaveName(); }else{ // 上传失败获取错误信息 return ['code'=>1,'msg'=>$file->getError()]; } //返回信息 return json(["code"=>1,"picname"=>$picname]); } } } ``` ``` 前端页面: <div class="layui-form-item" style="margin: 20px 0"> <label class="layui-form-label">头像上传</label> <div class="layui-input-block"> <input type="hidden" id="pic" name="img"> <button type="button" class="layui-btn" id="imgUpload"> <i class="layui-icon">&#xe67c;</i>上传 </button> <div id="pic1"></div> </div> </div> jq代码: // 图片上传 var uploadInst = upload.render({ elem: '#imgUpload' //绑定元素 , url: '{:url("admin/user/upload")}' //上传接口 , done: function (res) { if (res.code == 1) { var str1 = "<img src='/upload/" + res.picname + "' style='max-width: 100px;max-height: 100px'>"; //显示图片 $("#pic1").html(str1); //保存图片内容,返回到后端 $("#pic").val(res.picname); } else { $("#pic").val(''); layer.msg("图片上传失败"); } } , error: function () { //请求异常回调 layer.msg("请求失败"); } }); ``` 文件名是带路径的,如果不需要路径,只需要文件名: `$data["file"] = basename($data["file"]);`