这篇文章主要讲解了“ThinkPHP6上传图片代码demo是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“ThinkPHP6上传图片代码demo是什么”吧!
本文展示了ThinkPHP6 上传图片代码demo, 代码亲测可用.
HTML部分代码
<tr> <th class="font-size-sm" style="width:15%;height:100px;">商品图片</th> <td> <div class="custom-file"> <div id="uploadImage" style="width:100px;height:100px;display: inline;"></div> <button id="uploadBtn" class="btn btn-outline-info font-size-sm">选择图片</button> <input type="file" name="imgFile" id="imgFile" style="display: none;"> </div> </td></tr>
JS部分代码
$(document).ready(function(){ var input = $("#imgFile"); // 将上传按钮绑定到input['file']上 $("#uploadBtn").click(function(){ input.trigger("click"); }); input.change(function () { // 如果value不为空,调用文件加载方法 if ($(this).val() !== "") { doUpload(this); } });}); // 上传图片var SCOPE = { 'uploadUrl': '{:url("' + urlPath +'/upload")}',};function doUpload() { var formData = new FormData($( "#myform" )[0]), appendDiv = $("#uploadImage"), imageUrl = '', imageDiv = ''; $.ajax({ url: SCOPE.uploadUrl , type: 'POST', data: formData, async: false, cache: false, contentType: false, processData: false, success: function (result) { if(result.status === 1){ appendDiv.empty(); imageUrl = '/storage/' + result.data; imageDiv = ''; appendDiv.append(imageDiv); } }, });}
ThinkPHP中的上传方法
public function upload(){ // 获取表单上传文件 例如上传了001.jpg $file = request()->file('imgFile'); try{ // 验证 validate(['imgFile'=>[ 'fileSize' => 410241024, 'fileExt' => 'jpg,jpeg,png,bmp,gif', 'fileMime' => 'image/jpeg,image/png,image/gif', //这个一定要加上,很重要我认为! ]])->check(['imgFile' => $file]); // 上传图片到本地服务器 $saveName = \think\facade\Filesystem::disk('public')->putFile( 'merchant', $file, 'data'); $this->result(1, '图片上传成功!', $saveName, 'json'); } catch (\Exception $e) { // 验证失败 输出错误信息 return $this->exceptionHandle($e, '图片上传失败!' . $e->getMessage(), 'json', ''); }}
感谢各位的阅读,以上就是“ThinkPHP6上传图片代码demo是什么”的内容了,经过本文的学习后,相信大家对ThinkPHP6上传图片代码demo是什么这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是编程网,小编将为大家推送更多相关知识点的文章,欢迎关注!