ThinkPHP 5使用OSS

准备工作

  • 登录阿里云官网,将鼠标移至产品找到并单击对象存储OSS打开OSS产品详情页面。
  • OSS产品详情页中的单击立即开通。
  • 开通服务后,在OSS产品详情页面单击管理控制台直接进入OSS管理控制台界面。
    您也可以单击位于官网首页右上方菜单栏的控制台,进入阿里云管理控制台首页,然后单击左侧的对象存储OSS菜单进入OSS管理控制台界面。
  • 点击右上角access key按钮,进入子页面点击创建access key按钮,创建成功后获取Access Key IDAccess 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;
  • 实例化OSS

    $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);
}
上一篇:在容错极低的服务器市场一年一增长,新华三究竟是如何实现的?


下一篇:基于OSS存储搭建Hadoop集群