因为某些人的原因,本文从新改名发布一遍。

原名称:tp5 -- 腾讯云cos简单使用

原文链接:https://www.cnblogs.com/YFYQ/p/10840050.html

因项目需要,本来是需要对接阿里云oss,但因客户错误将云存储买成腾讯云cos,因此简单做了个对象上传使用

首先下载cos的sdk:

三种方式在文档上面都有介绍

SDK 安装有三种方式:Composer 方式Phar 方式 和 源码方式

本渣用的是最low 的源码方式

下载完成后解压放至TP5的第三方类库extend/下(感觉文件名太长本渣将解压后的sdk文件名改为了sdk):

然后说下腾讯云cos的配置参数:

其中SecretId和SecretKey参数在腾讯云-》对象存储-》秘钥管理获得

bucket 参数可直接请求接口,也可同样在腾讯云-》对象存储-》存储桶列表直接创建

return [
    'QCLOUD' => [
        'appId'     => '******',   //账户中心的 APPid
        'SecretId'  => '******',   //开发者拥有的项目身份识别 ID
        'SecretKey' => '******',   //开发者拥有的项目身份密钥
        'region'    => 'bj',       //你的Bucket所有地域 例如上海 (sh)写简称就可以
        'bucket'    => '******'    //COS中用于存储桶名称
    ],
];

  

其中region 地区在文档上也有介绍:

以下是对应的地区简称(了解就行):

//地域缩写
'cn-east'=>'ap-shanghai',
'cn-sorth'=>'ap-guangzhou',
'cn-north'=>'ap-beijing-1',
'cn-south-2'=>'ap-guangzhou-2',
'cn-southwest'=>'ap-chengdu',
'sg'=>'ap-singapore',
'tj'=>'ap-beijing-1',
'bj'=>'ap-beijing',
'sh'=>'ap-shanghai',
'gz'=>'ap-guangzhou',
'cd'=>'ap-chengdu',
'sgp'=>'ap-singapore'

  

最后就是简单的对象上传请求了

SDK 放在 根目录下/extend/

我的路径/extend/sdk

其中

saveName 是你文件上传的文件名称 注意路径 "/" window下的是 "\" 这样的话上传上去不会自动创建文件夹。

pathname 你要上传的本地文件地址

/**
     * 腾讯云Cos -- 上传对象
     */
    function qcloudCosUpload($file = '' , $info = array() , $fileInfo)
    {
        if( !$file  || !$info ){
            return json_error('缺失参数 ');
        }
        //引用COS sdk
        \think\Loader::import('sdk.vendor.autoload');
        $cosClient = new \Qcloud\Cos\Client(
            array(
                'region'      => config('QCLOUD.region'),
                'credentials' => array(
                    'appId'     => config('QCLOUD.appId'),
                    'secretId'  => config('QCLOUD.SecretId'),
                    'secretKey' => config('QCLOUD.SecretKey')
                )
            )
        );
        $file = $info['pathname'];
        try {
            $data = array( 'Bucket' => config('QCLOUD.bucket'), 'Key'  => $info['saveName'], 'Body' => fopen($file, 'rb') );
            //判断文件大小 大于5M就分块上传
            $result = $cosClient->Upload( $data['Bucket'] , $data['Key'] , $data['Body']  );

            if( $result ){
                return $result;
            }
        } catch (\Exception $e) {
            return json_error('上传失败 ');
        }

    }

  

至此,简单的上传对象即已完成。

感谢您的查看。

本文主要借鉴于:https://www.cnblogs.com/inkwhite/p/9057339.html

再次感谢墨白`Blog 大大的博客分享。

转载需要告知本人

2019年06月22日

PHP 腾讯云cos使用之我见的更多相关文章

  1. 微信小程序/网站 上传图片到腾讯云COS

    COS简介: 腾讯云提供的一种对象存储服务,供开发者存储海量文件的分布式存储服务.可以将自己开发的应用的存储部分全部接入COS的存储桶中,有效减少应用服务器的带宽,请求等.个人也可以通过腾讯云账号免费 ...

  2. 腾讯云COS体验

    其实这篇文章本来是推荐COS的,写了一半发现COS的免费额度取消了,2019年之后的开通的用户免费6个月,老用户不受影响,这还让我怎么推荐啊?!写都写了,删掉岂不是白浪费时间? 都怪你!腾讯云! 起因 ...

  3. 利用腾讯云COS云对象存储定时远程备份网站

    版权声明:本文由张戈 原创文章,转载请注明出处: 文章原文链接:https://www.qcloud.com/community/article/942851001487125915 来源:腾云阁 h ...

  4. Nginx反向代理腾讯云COS的一个坑

    版权声明:本文由黄希彤   原创文章,转载请注明出处: 文章原文链接:https://www.qcloud.com/community/article/668639001484812620 来源:腾云 ...

  5. 直压到亚马逊AWS平台,阿里云OSS平台或者腾讯云COS平台

    GTX Compressor (直压上云技术预览版) Powered by GTXLab of Genetalks. 技术预览版本下载地址: https://github.com/Genetalks/ ...

  6. 搭建markdown图床-腾讯云COS

    背景介绍 书写markdown笔记时,如何处理图片,实在是有些棘手的问题.每一张图都保存在当前文件夹? 每张图都自己重命名?每次上传到cnblogs博客都需要一张一张拖动?markdown已经非常成功 ...

  7. tp5 -- 腾讯云cos简单使用

    因项目需要,本来是需要对接阿里云oss,但因客户错误将云存储买成腾讯云cos,因此简单做了个对象上传使用 首先下载cos的sdk: 三种方式在文档上面都有介绍 SDK 安装有三种方式:Composer ...

  8. 腾讯云COS对象存储的简单使用

    叮当哥之前买了一年的腾讯云服务器,昨日偶然发现腾讯云送了叮当哥半年的cos对象存储服务器,于是就撸起袖子传了几张珍藏的高清大图上去,现将其上传的简单使用步骤总结一波(其它操作参加官方SDK文档API) ...

  9. 腾讯云COS对象存储

    一.腾讯云COS 腾讯云对象存储 COS 是一种存储海量数据的分布式存储服务.COS 提供了多种对象的存储类型:标准存储.低频存储.归档存储. 二.为什么要使用TA 便宜: 个人用户有6个月的免费使用 ...

随机推荐

  1. HTTP请求信息和响应信息的格式

    请求: (1)请求行信息 Request URL: 发起请求的路径 Request Method:请求的方式(get  post  head put  delete  trace  options等) ...

  2. 2013 Noip提高组 Day2

    3288积木大赛 正文 题目描述 春春幼儿园举办了一年一度的“积木大赛”.今年比赛的内容是搭建一座宽度为n的大厦,大厦可以看成由n块宽度为1的积木组成,第i块积木的最终高度需要是hi. 在搭建开始之前 ...

  3. SQL必知必会03 计算字段 获取当前日期时间 日期时间格式化

  4. 10M光纤与下载速度KB/s、MB/s的换算

    我们经常听说谁开的宽带是4M或10M或20M等等.那这和我们所说的网速“多少MB/s”.“多少KB/s”等同吗? 其实这不是一个概念. 在宽带运营商那里开的宽带,比如4M,其实是说4M bit/s,即 ...

  5. zabbix图表中文乱码

    如果语言改成中文,在图表中的中文会乱码,这是因为zabbix默认的字体文件比较烂 方法就是把字体文件替换,找到zabbix前端文件地址,换一个字体文件就好 [root@webmaster fonts] ...

  6. 最短路之Dijkstra(单源)HDU 2544

    #include <iostream> using namespace std; ; ][]; ]; int middist; ]; void dijkstra(int n,int m) ...

  7. Gym - 101810H ACM International Collegiate Programming Contest (2018)

    bryce1010模板 http://codeforces.com/gym/101810 #include <bits/stdc++.h> using namespace std; #de ...

  8. 持续集成~Jenkins里的NuGet和MSBuild插件

    Jenkins是一个持续集成的环境,它是java开发的,大叔认为它的工作流程是 从源代码拉一个项目下来到它本地(可以配置定时机制) 恢复相关程序包nuget 编译程序 发布程序 现在说一下在配置jen ...

  9. Masonry UIScrollView autolayout 的一个奇特的问题

    事情是这样的.... 我一个工程里 一直使用的 masonry 做autolayout,有个gesturerReconizer的bug,找了很久,发现很奇怪一个现象: 我的某个view 是这样的 |- ...

  10. WGET and CURL

    目录 WGET and CURL 对比 wget curl curl使用示例 WGET and CURL 对比 CURL 和WGET都可以用来下载文件,用法也类似:curl/wget [-option ...