要测试 MinIO PHP 客户端库的功能,您可以按照以下步骤操作:
安装 MinIO PHP 客户端库: 使用 Composer 安装 MinIO PHP 客户端库。在命令行中运行以下命令:
composer require minio/minio-php
准备 MinIO 服务器: 确保您已经安装并运行了 MinIO 服务器。如果没有,请访问 MinIO 官方文档(https://docs.min.io/docs/minio-server-quickstart.html)并按照说明进行安装和配置。
编写测试代码: 创建一个 PHP 文件(例如:test_minio.php),并在其中编写以下代码:
<?php
require 'vendor/autoload.php';
use Minio\Minio;
use Minio\Exception\MinioException;
// 配置 MinIO 客户端
$minioClient = new Minio([
'endpoint' => 'http://YOUR_MINIO_SERVER_IP:9000',
'accessKey' => 'YOUR_ACCESS_KEY',
'secretKey' => 'YOUR_SECRET_KEY',
'secure' => false, // 如果您的 MinIO 服务器使用 HTTPS,请将此选项设置为 true
]);
// 定义一个存储桶名称和对象名称
$bucketName = 'my-test-bucket';
$objectName = 'test-object.txt';
// 上传一个对象到 MinIO 服务器
try {
$minioClient->putObject($bucketName, $objectName, 'Hello, this is a test object!', null);
echo "Object uploaded successfully.\n";
} catch (MinioException $e) {
echo "Error uploading object: " . $e->getMessage() . "\n";
}
// 从 MinIO 服务器下载对象
try {
$objectData = $minioClient->getObject($bucketName, $objectName);
echo "Object downloaded successfully. Content: " . $objectData . "\n";
} catch (MinioException $e) {
echo "Error downloading object: " . $e->getMessage() . "\n";
}
// 列出存储桶中的所有对象
try {
$objects = $minioClient->listObjects($bucketName);
echo "Objects in bucket '$bucketName':\n";
foreach ($objects as $object) {
echo " - " . $object['Key'] . "\n";
}
} catch (MinioException $e) {
echo "Error listing objects: " . $e->getMessage() . "\n";
}
// 删除对象
try {
$minioClient->deleteObject($bucketName, $objectName);
echo "Object deleted successfully.\n";
} catch (MinioException $e) {
echo "Error deleting object: " . $e->getMessage() . "\n";
}
请确保将 YOUR_MINIO_SERVER_IP
、YOUR_ACCESS_KEY
和 YOUR_SECRET_KEY
替换为您的 MinIO 服务器的实际 IP 地址和访问密钥。
运行测试代码: 在命令行中,使用 PHP 运行刚刚编写的测试代码:
php test_minio.php
如果一切正常,您应该会看到类似于以下的输出:
Object uploaded successfully.
Object downloaded successfully. Content: Hello, this is a test object!
Objects in bucket 'my-test-bucket':
- test-object.txt
Object deleted successfully.
通过以上步骤,您可以测试 MinIO PHP 客户端库的基本功能,包括上传、下载、列出和删除对象。您可以根据需要编写更多的测试代码来覆盖其他功能。