ThinkPHP 接收前端上传的图片 / 文件
2022/1/28 1:04:34
本文主要是介绍ThinkPHP 接收前端上传的图片 / 文件,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
前言
上传图片还是文件这个可以根据你的修改,我这里展示的是上传图片,但是其实原理都是一样的
接收 —> 移动到目录 —> 返回图片路径。这里暂不支持多图上传,多图上传有时间会加上。
目录结构
使用到的文件
Result.php
<?php namespace app\business\Result; class Result { //success static public function Success($data) { $rs = [ 'code'=>200, 'message'=>"success", 'data'=>$data, ]; return json($rs); } /** * error * 402 图片上传格式错误 * 500 错误 * */ static public function Error($code,$msg) { $rs = [ 'code'=>$code, 'message'=>$msg, 'data'=>"", ]; return json($rs); } }
Result.php 是用来格式化返回数据给前端的,可以根据自己的不同需求来进行修改。
upFile.php
<?php namespace app\controller; namespace app\validate; use app\BaseController; use app\business\Result\Result; use think\Request; use think\file\UploadedFile; use think\Validate; class upFile extends BaseController { public function index() { $data = $_POST; // image 前端图片名称 $data['image'] = request()->file('image'); $file = $data['image']; // 文件信息验证与上传到服务器指定目录 $info = $file->validate([ 'size'=>5000000, // 文件大小 'ext'=>'jpg,jpeg,png,gif' // 文件拓展名 ])->move('static/'); // 移动到public/uploads目录下 // 错误 if($info == false){ return Result::Error($file->getError()); } // 获取文件名 $data['image'] = $info->getSaveName(); return Result::Sucess($data['image']); } } ?>
其中 image 对应前端上传的图片字段名称,static/ 是存放在 public 文件夹下的,可要根据不同需求修改存放路径。我这边返回的是图片的名称,根据需要也可以返回图片访问路径。
这篇关于ThinkPHP 接收前端上传的图片 / 文件的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-12-19php8的协程和hyperf的协程有什么区别?-icode9专业技术文章分享
- 2024-12-19php8 的fiber是什么?-icode9专业技术文章分享
- 2024-12-05怎么在php8,1 里面开启 debug?-icode9专业技术文章分享
- 2024-12-05怎么在php8,1 里面开启 debug?-icode9专业技术文章分享
- 2024-11-29使用PHP 将ETH账户的资产汇集到一个账户
- 2024-11-23怎么实现安卓+php 热更新方案?-icode9专业技术文章分享
- 2024-11-22PHP 中怎么实现判断多个值是否为空、null 或者为 false?-icode9专业技术文章分享
- 2024-11-11开源 PHP 商城项目 CRMEB 二次开发和部署教程
- 2024-11-09怎么使用php在kaufland平台刊登商品?-icode9专业技术文章分享
- 2024-11-05PHP的抽象类和接口是什么,有什么区别-icode9专业技术文章分享