Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Perkongsian contoh dok PHP dan Qiniu Cloud

Perkongsian contoh dok PHP dan Qiniu Cloud

PHPz
PHPzasal
2023-07-05 17:16:37916semak imbas

Perkongsian contoh dok PHP dan Qiniu Cloud

Pengenalan:
Dengan perkembangan Internet, semakin banyak tapak web dan aplikasi perlu menyimpan dan mengurus sejumlah besar gambar, video dan fail lain. Sebagai storan awan terkemuka dan pembekal perkhidmatan CDN, Qiniu Cloud menyediakan pembangun dengan penyelesaian storan dan pengedaran yang cekap dan boleh dipercayai. Artikel ini akan berkongsi cara menggunakan bahasa PHP untuk berhubung dengan Qiniu Cloud dan memberikan contoh kod yang berkaitan.

1. Daftar akaun Qiniu Cloud
Mula-mula kita perlu mendaftar akaun Qiniu Cloud Selepas log masuk, kita boleh mendapatkan ruang storan Qiniu Cloud. Dalam bahagian belakang Awan Qiniu, kami boleh mencipta ruang storan baharu dan setiap ruang storan mempunyai nama yang unik.

2. Pasang Qiniu Cloud PHP SDK
Qiniu Cloud menyediakan SDK yang sesuai untuk pembangunan PHP, yang boleh kami pasang melalui Composer. Cipta fail composer.json dalam direktori akar projek dan tambah kandungan berikut:

{
    "require": {
        "qiniu/php-sdk": "^7.0"
    }
}

Kemudian laksanakan arahan composer install dalam baris arahan, Composer akan memuat turun dan memasang Qiniu Cloud PHP SDK secara automatik.

3. Konfigurasikan kunci akses Awan Qiniu
Sebelum menggunakan SDK Awan Qiniu, kami perlu mengkonfigurasi kunci akses dalam projek. Dalam bahagian belakang Awan Qiniu, cari ruang storan yang sepadan dan SecretKey boleh didapati pada halaman "Pengurusan Kunci" Kedua-dua kunci ini digunakan untuk pengesahan tandatangan permintaan API.

Kami boleh menambah kandungan berikut pada fail konfigurasi projek dan menggantikan AccessKey dan SecretKey dengan kunci anda sendiri:

define('QINIU_ACCESS_KEY', 'your_access_key');
define('QINIU_SECRET_KEY', 'your_secret_key');

4 Muat naik fail ke Ruang Storan Awan Qiniu
Seterusnya mari lihat contoh mudah, Muat naik gambar tempatan ke awan Qiniu. ruang simpanan.

<?php
require 'vendor/autoload.php';

use QiniuAuth;
use QiniuStorageUploadManager;

// 获取七牛云访问密钥
$accessKey = QINIU_ACCESS_KEY;
$secretKey = QINIU_SECRET_KEY;

// 初始化Auth对象
$auth = new Auth($accessKey, $secretKey);

// 生成上传Token
$bucket = 'your_bucket_name'; // 替换为你的存储空间名称
$token = $auth->uploadToken($bucket);

// 上传文件
$filePath = '/path/to/your/file.jpg'; // 替换为你的本地文件路径
$uploadManager = new UploadManager();
list($ret, $err) = $uploadManager->putFile($token, null, $filePath);

if ($err !== null) {
    echo "文件上传失败: ", $err->message(), "
";
} else {
    echo "文件上传成功
";
    echo "文件URL: ", $ret['key'], "
";
    echo "文件Hash: ", $ret['hash'], "
";
}
?>

Dalam kod di atas, kami mula-mula mencipta objek Auth melalui kelas QiniuAuth dan memulakannya dengan AccessKey dan SecretKey. Kemudian gunakan kaedah uploadToken bagi objek Auth untuk menjana Token muat naik, dengan parameternya ialah nama ruang storan.

Seterusnya, kami menggunakan kaedah putFile kelas QiniuStorageUploadManager untuk memuat naik fail setempat. Antaranya, parameter $token ialah Token muat naik, parameter $key ialah nama fail yang disimpan pada Qiniu Cloud (jika ianya batal, nama fail unik dijana secara automatik), dan parameter $filePath ialah laluan fail setempat. Selepas muat naik berjaya, tatasusunan yang mengandungi maklumat fail akan dikembalikan.

5. Gunakan Qiniu Cloud Storage
Selepas berjaya memuat naik fail, kami boleh mengakses dan memaparkan fail melalui CDN Qiniu Cloud. Fail dalam ruang storan Awan Qiniu boleh diakses melalui URL dalam format berikut:

http://<bucket>.<domain>/<key>

Antaranya, 6818f0f2c9e3278a2b80d147d3f10526 ialah nama ruang storan, 9e6c6f86673efa96e9f4645ec38e5f75 ialah nama domain Qiniu Cloud, dan 5cb7eb41ad9292e7184df9ae4ddbe6a0 ; ialah nama fail.

6. Muat turun fail daripada Qiniu Cloud Storage
Jika anda perlu memuat turun fail daripada Qiniu Cloud Storage, anda boleh menggunakan kod berikut:

<?php
require 'vendor/autoload.php';

use QiniuAuth;
use QiniuStorageBucketManager;

// 获取七牛云访问密钥
$accessKey = QINIU_ACCESS_KEY;
$secretKey = QINIU_SECRET_KEY;

// 初始化Auth对象
$auth = new Auth($accessKey, $secretKey);

// 初始化BucketManager对象
$bucketMgr = new BucketManager($auth);

// 存储空间名称
$bucket = 'your_bucket_name'; // 替换为你的存储空间名称

// 文件名
$key = 'your_file_key'; // 替换为你的文件名

// 生成私有下载链接
$url = $bucketMgr->privateDownloadUrl($bucket, $key);

echo '文件下载链接:', $url;
?>

Dalam kod di atas, kami mula-mula mencipta objek BucketManager dan memulakannya dengan AccessKey dan SecretKey . Kemudian, gunakan kaedah privateDownloadUrl bagi objek BucketManager untuk menjana pautan muat turun peribadi, dengan parameternya ialah nama ruang storan dan nama fail.

Kesimpulan:
Melalui contoh di atas, kita boleh dengan mudah menyedari hubungan antara PHP dan Qiniu Cloud, dan merealisasikan fungsi muat naik dan muat turun fail. Qiniu Cloud menyediakan pelbagai API dan alatan, dan pembangun boleh melaksanakan fungsi yang lebih khusus mengikut keperluan mereka sendiri. Saya harap artikel ini berguna kepada anda, terima kasih kerana membaca!

Atas ialah kandungan terperinci Perkongsian contoh dok PHP dan Qiniu Cloud. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn