ThinkPHP 3使用OSS的方法
时间:2020-10-06 21:55:45|栏目:PHP代码|点击: 次
准备工作
- 登录阿里云官网,将鼠标移至产品找到并单击对象存储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库文件及示例文件。
填写配置项
修改文件 /Application/Common/Conf/config.php
'ALIOSS_CONFIG' => array( 'KEY_ID' => '', // 阿里云oss key_id 'KEY_SECRET' => '', // 阿里云oss key_secret 'END_POINT' => '', // 阿里云oss endpoint ),
创建实例化函数
文件 /Application/Common/Common/function.php,如果不存在则新建。
require_once('/vendor/autoload.php'); function new_oss() { $config = C('aliyun_oss'); return new \OSS\OssClient($config['KeyId'], $config['KeySecret'], $config['Endpoint']); }
控制器中调用OSS
文件 Application/Home/Controller/IndexController.php,可以是任意控制器或模型文件。
public function index() { $bucket = '<填写您的bucket名称>'; $object = '<填写您的object名称>'; $config = C('aliyun_oss'); //创建ossClient $ossClient = new_oss(); //创建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); }
总结