七牛云PHP SDK | AI生成和翻译

Home 2025.03

要在 PHP 中使用 "qiniu/php-sdk": "^7.0",您需要将七牛云 PHP SDK 集成到项目中。该 SDK 允许您与七牛云存储服务进行交互,例如上传文件、管理存储桶等。以下是入门指南:


1. 安装七牛云 PHP SDK

推荐通过 PHP 的依赖管理工具 Composer 安装 SDK。请确保系统已安装 Composer。

步骤:

如果未安装 Composer,可从 getcomposer.org 下载。


2. 项目配置

安装完成后,需在 PHP 脚本中包含自动加载器以使用 SDK 类。

示例:

在项目目录中创建 PHP 文件(如 index.php),并在顶部添加以下行:

require_once 'vendor/autoload.php';

这确保需要时自动加载 SDK 类。


3. 配置认证

使用七牛 SDK 需要七牛账户的 AccessKeySecretKey,可从七牛账户仪表盘获取。

示例:

use Qiniu\Auth;

$accessKey = '您的ACCESS_KEY';
$secretKey = '您的SECRET_KEY';

$auth = new Auth($accessKey, $secretKey);

'您的ACCESS_KEY''您的SECRET_KEY' 替换为实际凭证。


4. 基础用法:上传文件

使用七牛 SDK 最常见的任务之一是上传文件到存储桶。以下是上传本地文件的示例。

示例:

use Qiniu\Storage\UploadManager;

$bucket = '您的存储桶名称'; // 替换为七牛存储桶名称
$filePath = '/路径/到/您的/file.txt'; // 要上传文件的本地路径
$key = 'file.txt'; // 文件在七牛存储中的名称(可设为 null 使用原文件名)

$token = $auth->uploadToken($bucket); // 生成上传令牌
$uploadMgr = new UploadManager();

list($ret, $error) = $uploadMgr->putFile($token, $key, $filePath);

if ($error !== null) {
    echo "上传失败:" . $error->message();
} else {
    echo "上传成功!文件哈希值:" . $ret['hash'];
}

5. 其他功能

七牛云 PHP SDK 还提供许多其他功能,例如:

示例:列出存储桶中的文件

use Qiniu\Storage\BucketManager;

$bucketMgr = new BucketManager($auth);
list($ret, $error) = $bucketMgr->listFiles($bucket);

if ($error !== null) {
    echo "错误:" . $error->message();
} else {
    echo "存储桶中的文件:\n";
    foreach ($ret['items'] as $item) {
        echo $item['key'] . "\n";
    }
}

6. 错误处理

执行 SDK 操作后请务必检查 $error 变量。如果操作失败,$error 将包含错误详情。

示例:

if ($error !== null) {
    var_dump($error);
} else {
    var_dump($ret);
}

7. 环境要求

可通过以下命令检查 PHP 版本和扩展:

php -v
php -m

8. 后续步骤


完整示例代码

以下是上传文件的完整脚本:

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

use Qiniu\Auth;
use Qiniu\Storage\UploadManager;

$accessKey = '您的ACCESS_KEY';
$secretKey = '您的SECRET_KEY';
$bucket = '您的存储桶名称';
$filePath = '/路径/到/您的/file.txt';
$key = 'file.txt';

$auth = new Auth($accessKey, $secretKey);
$token = $auth->uploadToken($bucket);
$uploadMgr = new UploadManager();

list($ret, $error) = $uploadMgr->putFile($token, $key, $filePath);

if ($error !== null) {
    echo "上传失败:" . $error->message();
} else {
    echo "上传成功!文件哈希值:" . $ret['hash'];
}

将占位值(您的ACCESS_KEY您的SECRET_KEY您的存储桶名称/路径/到/您的/file.txt)替换为实际数据,即可开始使用!

如有特定功能需要帮助,请随时告知!


Back Donate