thanatosxia / yii2-oss
Aliyun Oss SDK for yii2, based on aliyun/aliyun-oss-php-sdk
1.2.8
2018-07-24 05:46 UTC
Requires
- php: >=5.6
- thanatosxia/aliyun-oss-sdk-php: *
- yiisoft/yii2: *
README
Aliyun Oss Sdk Extension for Yii 2
based on aliyun/aliyun-oss-php-sdk
安装
composer require thanatosxia/yii2-oss
使用
添加Oss组件
'oss' => [ 'class' => 'thanatos\oss\Oss', 'accessKeyId' => '', // Your accessKeyId 'accessKeySecret' => '', // Your accessKeySecret 'endpoint' => '', // endpoint address 'bucket' => '', // Bucket Name ],
上传文件
/** * $object 目标文件名 * $content 二进制文件内容 * $options 其它参数 */ Yii::$app->oss->putObject($object, $content, $options);
删除文件
/** * $object 目标文件名 * $options 其它参数 */ Yii::$app->oss->deleteObject($object, $options);
添加了可以上传远程文件, 可以直接使用,上传远程文件
Yii::$app->oss->putObjectOrigin($object, $url, $options);
在WEB上传,php回调处理文件
// 配置文件中增加一下选项 'oss' => [ 'accessKeyId' => 'xxxx', 'accessKeySecret' => 'xxxx', 'endpoint' => 'xxx', 'bucket' => '', 'callbackUrl' => '上传成功OSS请求的路径', // 自定义的上传回掉的参数 'callbackParams' => [ 'user_id', 'method', 'folder_id' ] ], // 获取OSS 签名 (dir 是允许前端上传的目录前缀) return Yii::$app->oss->getSignature($dir);
说明
Oss 类重新分装了官方的类,官方类中一切方法均可使用,在中间加入了单例机制,和规范的返回值。 原使用方式
$ossClient = new OssClient($accessKeyId, $accessKeySecret, $endpoint); $ossClient->putObject($bucket, $object, $content);
现在使用方式
Yii::$app->oss->putObject($object, $content, $options);
如有需要操作多个Bucket的情况,重置Bucket后操作
Yii::$app->oss->setBucket($bucket); Yii::$app->oss->putObject($object, $content, $options);
Think you use this package!