找了半天资料,终于是搞定了YII2.0接入OSS对象存储了。这里假定你已经安装了YII2.0,已经安装的compose。
第一步:我们安装下oss对象组件(也就是OSS的PHP API)控制台进入到YII2.0的根目录输入:composer require aliyuncs/oss-sdk-php,然后就安装,安装好后再根目录里的verdor下有aliyuncs文件夹如图:
这里就已经安装好OSS的对象存储API了,接下来就是和YII2.0整合在一起。
第二部:在根目录下新建common/components/两个文件夹,然后在components文件夹里面新建一个文件Aliyunoss.php,如图
接着我们在配置文件配置这个组件:
'Aliyunoss' => [
'class' => 'app\common\components\Aliyunoss',
],
如图:
这里YII2.0定义一个组件就成功了,然后我们就在这个组件写oss的API逻辑代码,先配置下oss,在params文件里配置OSS如图:
四个参数在oss后台可以找到。到这里YII2.0和oss就整合好了。接下来就敲代码.
第三部:在common/components/Aliyunoss文件里写如下代码:
<?php
namespace app\common\components;
use Yii;
use yii\base\Component;
use OSS\OssClient;
use OSS\Croe\OssException;
class Aliyunoss extends Component
{
public static $oss;
public function __construct()
{
parent::__construct();
$accessKeyId = Yii::$app->params['oss']['accessKeyId']; //获取阿里云oss的accessKeyId
$accessKeySecret = Yii::$app->params['oss']['accessKeySecret'];