应用场景
在之前的项目开发过程中,根据需求需要把图片、语音、视频等上传到阿里云OSS上面,接下来给大家分享一些经验。
前提准备
首先需要引入阿里云的OSS文件,这里我用的是TP框架3.2.3,放在Vendor文件夹中
,其次就是要上传到OSS上面需要ACCESS_KEY_ID ,ACCESS_KEY_SECRET,ENDPOINT,BUCKET。这些参数前两个就不多说了,是一些基本的东西,要想上传都可以获取到,ENDPOINT这个主要是你选定的OSS数据中心访问域名(我这里是用得公网地址),BUCKET最后这个是对象的存储桶,也就是说你上传的这个东西到了你自己的阿里云账号的这个存储桶里面,这个在创建的时候会有。为了方便,我把这些文件全部放在了配置文件里面(config.php),
OK!现在为止,咱们的准备工作就完成了,接下来就是撸码上传了。
功能实现
话不多说,直接上代码
namespace User\Controller;
use OSS\Core\OssException;
use OSS\OssClient;
use Think\Controller;
class OssController extends Controller
{
//文件上传到oss
public function upload_file(){
$id = $_POST['id'];//用户id
$type = $_POST['type'];
$upload = new \Think\Upload();// 实例化上传类
$upload->maxSize = 20485760;// 设置附件上传大小
$upload->rootPath =