天天看点

ThinkPHP 5使用OSS

准备工作

  • 登录 阿里云官网 ,将鼠标移至产品找到并单击对象存储OSS打开OSS产品详情页面。
  • OSS产品详情页 中的单击立即开通。
  • 开通服务后,在OSS产品详情页面单击管理控制台直接进入OSS管理控制台界面。

    您也可以单击位于官网首页右上方菜单栏的控制台,进入阿里云管理控制台首页,然后单击左侧的

    对象存储OSS菜单

    进入OSS管理控制台界面。
  • 点击右上角

    access key

    按钮,进入子页面点击创建access key按钮,创建成功后获取

    Access Key ID

    Access Key Secret

安装OSS PHP SDK

关于安装OSS PHP SDK的方法,请参看

官网

。对于Thinkphp 5,推荐通过 composer 方式管理项目依赖。

打开命令行,切换到项目根目录,输入以下命令

composer require aliyuncs/oss-sdk-php           

如果一直下载不成功,请在composer reauire之前加入composer中国镜像

composer config -g repo.packagist composer https://packagist.phpcomposer.com           

同时,您的项目下的 vendor 文件夹内,也将新建 aliyuncs 文件夹,里面的文件就是OSS库文件及示例文件。

ThinkPHP 5使用OSS

填写配置项

文件 application/config.php

//阿里云OSS配置
'aliyun_oss' => [
    'KeyId'      => ’’,  //您的Access Key ID
    'KeySecret'  => '',  //您的Access Key Secret
    'Endpoint'   => '',  //oss endpoint
],
           

实例化OSS

文件 application/common.php

  • 引入OSS
    use think\Request;
    use OSS\OssClient;
    use think\Config;
    use OSS\Core\OssException;           
  • $config = Config::get('aliyun_oss');
    Request::instance()->ossClient= new OssClient($config['KeyId'], $config['KeySecret'], $config['Endpoint']);           

控制器中调用OSS

文件 application/Index/controller/Index.php

public function index()
{
    $config = config('aliyun_oss');
    //获取oss实例
    $ossClient = request()->ossClient;
    $bucket = '<填写您的bucket名称>';
    $object = '<填写您的object名称>';

    //创建bucket
    $ossClient->createBucket($bucket);
    //创建object
    $ossClient->putObject($config['Bucket'], $object, 'object content');
    //获取object内容
    $object = $ossClient->getObject($config['Bucket'], $object);
    //删除object
    $ossClient->deleteObject($bucket, $object);
    //删除bucket
    $ossClient->deleteBucket($bucket);
}