이 글에서는 주로 Alibaba Cloud oss를 통합한 Yii2.0의 샘플 코드를 소개합니다. 편집자는 꽤 좋다고 생각하여 지금 공유하고 참고용으로 제공하겠습니다. 편집기를 따라 살펴보겠습니다
주요 아이디어는 먼저 작곡가를 사용하여 Alibaba Cloud OSS의 PHP SDK를 다운로드한 다음 구성 요소를 사용자 정의하여 Alibaba Cloud OSS를 전역적으로 호출하는 것입니다.
구체적인 단계는 다음과 같습니다.
1 Alibaba Cloud 공식 웹사이트로 이동하여 PHP SDK를 찾습니다.
2 작곡가를 사용하여 설치하고 프로젝트 디렉터리(basic/)에 입력합니다.
composer require aliyuncs/oss-sdk-php
After 아래와 같이 설치가 완료됩니다
3 Custom Components:
3.1 기본 디렉터리에 Components 폴더를 생성하고,
3.2 Components 디렉터리에 Aliyunoss.php를 생성합니다.
코드 참조는 다음과 같습니다. :
<?php namespace app\components; use Yii; use yii\base\Component; use OSS\OssClient; 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']; //获取阿里云oss的accessKeySecret $endpoint = Yii::$app->params['oss']['endPoint']; //获取阿里云oss的endPoint self::$oss = new OssClient($accessKeyId, $accessKeySecret, $endpoint); //实例化OssClient对象 } /** * 使用阿里云oss上传文件 * @param $object 保存到阿里云oss的文件名 * @param $filepath 文件在本地的绝对路径 * @return bool 上传是否成功 */ public function upload($object, $filepath) { $res = false; $bucket = Yii::$app->params['oss']['bucket']; //获取阿里云oss的bucket if (self::$oss->uploadFile($bucket, $object, $filepath)) { //调用uploadFile方法把服务器文件上传到阿里云oss $res = true; } return $res; } /** * 删除指定文件 * @param $object 被删除的文件名 * @return bool 删除是否成功 */ public function delete($object) { $res = false; $bucket = Yii::$app->params['oss']['bucket']; //获取阿里云oss的bucket if (self::$oss->deleteObject($bucket, $object)){ //调用deleteObject方法把服务器文件上传到阿里云oss $res = true; } return $res; } public function test(){ echo 123; echo "success"; } } ?>
3.3 basic/config에서 /params.php에 배열을 추가하여 Alibaba Cloud oss
의 구성 정보를 배치합니다. 코드 참조는 다음과 같습니다.
'oss' =>[ 'accessKeyId'=>'您的accessKeyId', 'accessKeySecret'=>'您的accessKeySecret', 'bucket' => '您的bucket', 'endPoint' => '您的endPoint', ]
3.4 구성 요소 구성 추가 basic/config/main.php
'Aliyunoss' => [ 'class' => 'app\components\Aliyunoss', ],
3.5 통화 시도
Yii::$app->Aliyunoss->test();
3.6 통화 성공 스크린샷:
이 시점에서 Alibaba Cloud oss가 성공적으로 도입되었습니다. yii2 프레임워크. 업로드 메소드 호출과 삭제 메소드 호출은 예제와 동일합니다. OssClient의 메소드를 기반으로 Aliyunoss 구성요소에 새로운 기능을 추가할 수도 있습니다. 일반적으로 업로드 및 삭제 기능을 사용하면 대부분의 요구 사항을 충족할 수 있습니다.
위 내용은 Alibaba Cloud oss와 yii2.0 통합 사례 공유(사진)의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!