PHP上传图片到阿里云OSS (缩略图)

1、点击控制台找到对象存储(OSS)
创建Bucket
PHP上传图片到阿里云OSS (缩略图)_第1张图片PHP上传图片到阿里云OSS (缩略图)_第2张图片
创建完成后点击你的空间列表点击你刚创建的空间然后点击概述 注:版本控制关掉
PHP上传图片到阿里云OSS (缩略图)_第3张图片
PHP上传图片到阿里云OSS (缩略图)_第4张图片
下载sdk

composer require aliyuncs/oss-sdk-php

准备工作完成 直接上代码

use OSS\OssClient;
use OSS\Core\OssException;

// 阿里云主账号AccessKey拥有所有API的访问权限,风险很高。强烈建议您创建并使用RAM账号进行API访问或日常运维,请登录RAM控制台创建RAM账号。
//上传图片到阿里云 缩略图

	 public function add(Request $request){
  	  $file = $request->file('img'); //获取前端数据

    //制作缩略图
    $savename = Filesystem::disk('public')->putFile('',$file);
    $path = "./uploads/".$savename;

    $image = Image::open($path);
    $rand = rand(1,9999); //随机数
    $image->thumb(150,150)->save($path."$rand.png"); //拼接缩略图路径


    $accessKeyId = "accessKeyId ";
    $accessKeySecret = "accessKeySecret ";
    $endpoint = "endpoint ";

    $bucket= "空间名称";// 设置存储空间名称。

    $object = rand(1,999999). '.jpg';// 设置文件名称。
//        $object = $file->getInfo('name');

    $filePath = $path."$rand.png"; //要上传的图片路径

    try{
        $ossClient = new OssClient($accessKeyId, $accessKeySecret, $endpoint);

        $ossClient->uploadFile($bucket, $object, $filePath);
    } catch(OssException $e) {
        printf(__FUNCTION__ . ": FAILED\n");
        printf($e->getMessage() . "\n");
        return;
    }
    print(__FUNCTION__ . ": OK" . "\n");
}

你可能感兴趣的:(阿里云,php)