PHP華為雲端API介面對接中的物件儲存與檔案傳輸設定範例
導言:
隨著雲端運算的快速發展,雲端儲存服務成為了企業取得和儲存大量資料的首選方法。華為雲端作為領先的雲端服務供應商,其物件儲存服務(Object Storage Service,OBS)提供了高可擴展性、高可靠性和高安全性的儲存解決方案。在本文中,我們將詳細介紹如何使用PHP語言對接華為雲端的OBS服務,並給出對應的程式碼範例。
一、設定華為雲端API金鑰
在使用華為雲端的OBS服務之前,我們首先需要設定對應的API金鑰。你可以在華為雲的控制台中建立一個金鑰對。在建立好密鑰對後,我們將使用該密鑰對來對接OBS服務。
二、安裝依賴套件
在開始寫程式碼之前,我們需要先安裝對應的依賴套件。在PHP中,我們使用Composer來管理依賴套件。在專案的根目錄下建立composer.json文件,並新增以下內容:
{ "require": { "huaweicloud/huaweicloud-sdk-php-obs": "2.9.4" } }
儲存檔案後,在終端機中執行以下命令安裝所需的依賴套件:
composer install
三、物件儲存範例
require_once 'vendor/autoload.php'; use ObsObsClient;
$accessKey = 'YOUR_ACCESS_KEY'; $secretKey = 'YOUR_SECRET_KEY'; $endpoint = 'YOUR_OBS_ENDPOINT'; $obsClient = new ObsClient([ 'key' => $accessKey, 'secret' => $secretKey, 'endpoint' => $endpoint, ]);
$bucketName = 'your-bucket-name'; $obsClient->createBucket(['Bucket' => $bucketName]);
$sourceFile = '/path/to/your/file.jpg'; $destFile = 'your-object-key.jpg'; $result = $obsClient->putObject([ 'Bucket' => $bucketName, 'Key' => $destFile, 'SourceFile' => $sourceFile, ]);
$destFile = '/path/to/save/file.jpg'; $result = $obsClient->getObject([ 'Bucket' => $bucketName, 'Key' => $destFile, 'SaveAsFile' => $destFile, ]);
$objectKey = 'your-object-key.jpg'; $result = $obsClient->deleteObject([ 'Bucket' => $bucketName, 'Key' => $objectKey, ]);
$obsClient->close();
require_once 'vendor/autoload.php'; use HuaweiCloudSDKCoreExceptionSdkException; use HuaweiCloudSDKOBS2RegionRegionEnum; use HuaweiCloudSDKOBS2OBSClient;
$ak = 'YOUR_ACCESS_KEY'; $sk = 'YOUR_SECRET_KEY'; $projectId = 'YOUR_PROJECT_ID'; $region = RegionEnum::{"your-region-enum-value"}; $obsClient = new OBSClient([ 'ak' => $ak, 'sk' => $sk, 'projectId' => $projectId, 'region' => $region, ]);
上傳檔案
$sourceFile = '/path/to/your/file.jpg'; $destFile = 'your-object-key.jpg'; $options = [ 'bucketName' => 'your-bucket-name', 'objectKey' => $destFile, 'sourceFile' => $sourceFile, ]; try { $obsClient->putObject($options); } catch (SdkException $e) { echo $e->getMessage(); }
$destFile = '/path/to/save/file.jpg'; $options = [ 'bucketName' => 'your-bucket-name', 'objectKey' => 'your-object-key.jpg', 'saveAsFile' => $destFile, ]; try { $obsClient->getObject($options); } catch (SdkException $e) { echo $e->getMessage(); }
$options = [ 'bucketName' => 'your-bucket-name', 'objectKey' => 'your-object-key.jpg', ]; try { $obsClient->deleteObject($options); } catch (SdkException $e) { echo $e->getMessage(); }
$obsClient->shutdown();
以上是PHP華為雲端API介面對接中的物件儲存與檔案傳輸設定範例的詳細內容。更多資訊請關注PHP中文網其他相關文章!