• 上传图片到腾讯云


    1、composer安装扩展

    "qcloud/cos-sdk-v5": "1.*"

    2、代码,多图

    <?php
    
    namespace AppLibrarylib;
    
    use QcloudCosClient;
    
    class CosLib
    {
        const REGION = 'test';
        const APP_ID = 'test';
        const SECRET_ID = 'test';
        const SECRET_KEY = 'test';
    
        const BUCKET = 'test';
        const ROOT_PATH = 'test';
        /**
         * 【构造函数】
         *
         */
        public function __construct() {
    
        }
    
        /**
         * 上传多张图片到腾讯云
         * @param $files
         * $files示例:$request->file('file_img')
         * @return array
         */
        public static function uploadSkuImg($files) {
    
            $cosClient = new Client(
                array(
                    'region' => self::REGION,
                    'credentials'=> array(
                        'appId' => self::APP_ID,
                        'secretId'    => self::SECRET_ID,
                        'secretKey' => self::SECRET_KEY
                    )
                )
            );
            $httpPaths = [];
            try {
                foreach ($files as $file) {
                    $realPath= $file->getRealPath();
    
                    $currentTime = time();
                    $curY = date('Y', $currentTime);
                    $curM = date('m', $currentTime);
                    $curD = date('d',$currentTime);
                    $fileName = $curY.$curM.$curD.$currentTime.mt_rand(1000, 9999).'.jpg';
                    $key = $curY.'/'.$curM.'/'.$curD.'/'.$fileName;
    
                    $result = $cosClient->putObject(
                        array(
                            'Bucket' => self::BUCKET,
                            'Key' =>  $key,
                            'Body' => file_get_contents($realPath)
                        )
                    );
    
                    $httpPaths[] = self::ROOT_PATH . $key;
                }
            } catch (Exception $e) {
                return [
                    'code' => 201,
                    'result' => $e->getMessage()
                ];
            }
    
            return [
                'code' => 200,
                'result' => $httpPaths
            ];
        }
    }

  • 相关阅读:
    layui使用iconfont
    MySQL&MyBatis 时间处理的配合
    Jira客户端
    同级div设置display:inline-block,父级div强制不换行
    Spring RestController 请求参数详解
    Mybatis映射文件
    Redis分布式锁
    Netty1
    Maven工程打成一个jar包
    Maven 工程读取resource下的文件
  • 原文地址:https://www.cnblogs.com/zhengchuzhou/p/9939044.html
Copyright © 2020-2023  润新知