Heim  >  Artikel  >  Backend-Entwicklung  >  Beispiel für die Objektspeicher- und Dateiübertragungskonfiguration im PHP Huawei Cloud API-Schnittstellen-Docking

Beispiel für die Objektspeicher- und Dateiübertragungskonfiguration im PHP Huawei Cloud API-Schnittstellen-Docking

王林
王林Original
2023-07-06 17:09:101317Durchsuche

Beispiel für die Konfiguration von Objektspeicherung und Dateiübertragung im PHP-Andocken der Huawei Cloud API-Schnittstelle

Einführung:
Mit der rasanten Entwicklung des Cloud Computing sind Cloud-Speicherdienste zur bevorzugten Methode für Unternehmen geworden, um große Datenmengen abzurufen und zu speichern. Als führender Cloud-Service-Anbieter bietet der Object Storage Service (OBS) von Huawei Cloud Speicherlösungen mit hoher Skalierbarkeit, hoher Zuverlässigkeit und hoher Sicherheit. In diesem Artikel stellen wir detailliert vor, wie man mithilfe der PHP-Sprache eine Verbindung zum OBS-Dienst von Huawei Cloud herstellt, und geben entsprechende Codebeispiele.

1. Huawei Cloud API-Schlüssel konfigurieren

Bevor wir den OBS-Dienst von Huawei Cloud nutzen, müssen wir zunächst den entsprechenden API-Schlüssel konfigurieren. Sie können in der Huawei Cloud-Konsole ein Schlüsselpaar erstellen. Nachdem wir das Schlüsselpaar erstellt haben, verwenden wir das Schlüsselpaar, um eine Verbindung zum OBS-Dienst herzustellen.

2. Abhängigkeitspakete installieren

Bevor wir mit dem Schreiben von Code beginnen, müssen wir zuerst die entsprechenden Abhängigkeitspakete installieren. In PHP verwenden wir Composer, um Abhängigkeitspakete zu verwalten. Erstellen Sie eine Composer.json-Datei im Stammverzeichnis des Projekts und fügen Sie den folgenden Inhalt hinzu:

{
    "require": {
        "huaweicloud/huaweicloud-sdk-php-obs": "2.9.4"
    }
}

Führen Sie nach dem Speichern der Datei den folgenden Befehl im Terminal aus, um die erforderlichen Abhängigkeitspakete zu installieren:

composer install

3. Beispiel für die Objektspeicherung

  1. Einführung Erforderliche Klassen und Namespaces
require_once 'vendor/autoload.php';
use ObsObsClient;
  1. OBS-Client erstellen
$accessKey = 'YOUR_ACCESS_KEY';
$secretKey = 'YOUR_SECRET_KEY';
$endpoint = 'YOUR_OBS_ENDPOINT';
$obsClient = new ObsClient([
    'key' => $accessKey,
    'secret' => $secretKey,
    'endpoint' => $endpoint,
]);
  1. Bucket erstellen
$bucketName = 'your-bucket-name';
$obsClient->createBucket(['Bucket' => $bucketName]);
  1. Dateien hochladen
$sourceFile = '/path/to/your/file.jpg';
$destFile = 'your-object-key.jpg';
$result = $obsClient->putObject([
    'Bucket' => $bucketName,
    'Key' => $destFile,
    'SourceFile' => $sourceFile,
]);
  1. Dateien herunterladen
$destFile = '/path/to/save/file.jpg';
$result = $obsClient->getObject([
    'Bucket' => $bucketName,
    'Key' => $destFile,
    'SaveAsFile' => $destFile,
]);
  1. Dateien löschen
$objectKey = 'your-object-key.jpg';
$result = $obsClient->deleteObject([
    'Bucket' => $bucketName,
    'Key' => $objectKey,
]);
  1. OBS schließen Client
$obsClient->close();

Vier. Dateiübertragungsbeispiel

  1. Erforderliche Klassen und Namespaces einführen
require_once 'vendor/autoload.php';
use HuaweiCloudSDKCoreExceptionSdkException;
use HuaweiCloudSDKOBS2RegionRegionEnum;
use HuaweiCloudSDKOBS2OBSClient;
  1. OBS-Client erstellen
$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,
]);
  1. Dateien hochladen
$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();
}
  1. Dateien herunterladen
$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();
}
  1. Dateien löschen
$options = [
    'bucketName' => 'your-bucket-name',
    'objectKey' => 'your-object-key.jpg',
];
try {
    $obsClient->deleteObject($options);
} catch (SdkException $e) {
    echo $e->getMessage();
}
  1. Schließen Sie den OBS-Client
$obsClient->shutdown();

Fazit:
Anhand des obigen Beispielcodes können wir sehen, dass die Verbindung zwischen PHP und dem Huawei Cloud OBS-Dienst sehr einfach ist. Wir müssen lediglich den entsprechenden API-Schlüssel konfigurieren, das Abhängigkeitspaket installieren und die Schritte im Beispielcode befolgen. Gleichzeitig bietet der Huawei Cloud OBS-Dienst eine Vielzahl von API-Schnittstellen, um verschiedene Anforderungen an die Objektspeicherung und Dateiübertragung zu erfüllen. Entwickler können diese API-Schnittstellen entsprechend den tatsächlichen Geschäftsanforderungen flexibel nutzen, um die Anwendungsleistung und das Benutzererlebnis zu verbessern.

Das obige ist der detaillierte Inhalt vonBeispiel für die Objektspeicher- und Dateiübertragungskonfiguration im PHP Huawei Cloud API-Schnittstellen-Docking. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn