Heim  >  Artikel  >  Backend-Entwicklung  >  Wie konvertiere ich mit PHP Bilder im Qiniu-Cloudspeicher in das Base64-Format und speichere sie in einem lokalen Ordner?

Wie konvertiere ich mit PHP Bilder im Qiniu-Cloudspeicher in das Base64-Format und speichere sie in einem lokalen Ordner?

王林
王林Original
2023-09-06 09:57:161378Durchsuche

Wie konvertiere ich mit PHP Bilder im Qiniu-Cloudspeicher in das Base64-Format und speichere sie in einem lokalen Ordner?

Wie verwende ich PHP, um Bilder im Qiniu Cloud Storage in das Base64-Format zu konvertieren und in einem lokalen Ordner zu speichern?

Einführung:
Mit der weit verbreiteten Anwendung von Cloud-Speicher wird Qiniu Cloud Storage als eine der bekanntesten Cloud-Speicherplattformen in China von immer mehr Entwicklern genutzt. In der tatsächlichen Entwicklung ist es manchmal erforderlich, Bilder im Qiniu-Cloudspeicher in das Base64-Format zu konvertieren und in einem lokalen Ordner zu speichern. In diesem Artikel wird erläutert, wie Sie PHP verwenden, um diese Funktion zu erreichen.

Schritte:

  1. Erstellen Sie einen PHP-Ordner, vorausgesetzt, es ist convert_image.php; convert_image.php
  2. 引入七牛云存储的SDK,可以通过Composer安装qiniu/php-sdk
  3. 在文件开头引入七牛云存储SDK的自动加载文件,以及其他必要的类:

    require_once 'vendor/autoload.php';
    
    use QiniuAuth;
    use QiniuStorageBucketManager;
  4. 设置七牛云存储的Access Key和Secret Key,以及要操作的存储空间名称:

    $accessKey = 'YOUR_ACCESS_KEY';
    $secretKey = 'YOUR_SECRET_KEY';
    $bucket = 'YOUR_BUCKET_NAME';
  5. 创建一个七牛云存储的授权对象:

    $auth = new Auth($accessKey, $secretKey);
  6. 获取存储空间中的所有文件列表:

    $bucketManager = new BucketManager($auth);
    $files = $bucketManager->listFiles($bucket);
  7. 循环遍历文件列表,对每个图片文件进行转换并保存到本地文件夹:

    if (!file_exists('images')) {
     mkdir('images');
    }
    
    foreach ($files['items'] as $file) {
     $key = $file['key'];
     $fileInfo = pathinfo($key);
     $extension = $fileInfo['extension'];
    
     // 判断文件是否为图片
     if (in_array($extension, ['jpg', 'jpeg', 'png', 'gif'])) {
         $imageData = file_get_contents('http://' . $bucket . '.qiniudn.com/' . $key);
         $base64Image = base64_encode($imageData);
    
         file_put_contents("images/{$fileInfo['filename']}.txt", $base64Image);
     }
    }

    解释:

  8. 在代码中,YOUR_ACCESS_KEYYOUR_SECRET_KEY分别替换为你在七牛云存储获取的Access Key和Secret Key;
  9. YOUR_BUCKET_NAME替换为你要操作的存储空间名称;
  10. images
  11. Stellen Sie das SDK von Qiniu Cloud Storage vor, das über Composer qiniu/php-sdk installiert werden kann code>;


Fügen Sie die automatisch ladende Datei des Qiniu Cloud Storage SDK am Anfang der Datei und andere erforderliche Klassen ein:

rrreee🎜🎜🎜Legen Sie den Zugriffsschlüssel und den geheimen Schlüssel des Qiniu Cloud Storage fest Name des zu bedienenden Speicherplatzes:🎜rrreee🎜🎜🎜Erstellen Sie ein Autorisierungsobjekt für Qiniu Cloud Storage:🎜rrreee🎜🎜🎜Erhalten Sie eine Liste aller Dateien im Speicherplatz:🎜rrreee🎜🎜🎜Durchlaufen Sie die Dateiliste, Konvertieren Sie jede Bilddatei und speichern Sie sie im lokalen Ordner: 🎜rrreee🎜Erklärung: 🎜🎜🎜Ersetzen Sie im Code YOUR_ACCESS_KEY und YOUR_SECRET_KEY durch den Zugriffsschlüssel und den geheimen Schlüssel, die Sie erhalten haben aus Qiniu Cloud Storage; 🎜🎜YOUR_BUCKET_NAME wird durch den Namen des Speicherplatzes ersetzt, den Sie betreiben möchten; 🎜🎜images ist der lokale Ordner, in dem die Bilder im Base64-Format gespeichert werden . Wenn es nicht existiert, erstellen Sie den Ordner. 🎜🎜🎜Zusammenfassung: 🎜Mit dem obigen Codebeispiel können wir PHP verwenden, um Bilder im Qiniu Cloud Storage in das Base64-Format zu konvertieren und sie in einem lokalen Ordner zu speichern. Dies ist bei bestimmten Anforderungen sehr nützlich, z. B. beim Konvertieren von Bildern in das Base64-Format vor der Durchführung anderer Verarbeitungen oder beim Speichern von Bildinhalten in einer Datenbank usw. Ich hoffe, dass dieser Artikel Ihnen bei der Implementierung dieser Funktion hilft. 🎜

Das obige ist der detaillierte Inhalt vonWie konvertiere ich mit PHP Bilder im Qiniu-Cloudspeicher in das Base64-Format und speichere sie in einem lokalen Ordner?. 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