桶(Bucket)是 TOS 的全局唯一的命名空间,相当于数据的容器,用来储存对象(Object)数据。新创建的桶名在 TOS 中必须是唯一的。
您可以通过 TosClient->createBucket 新建一个桶,示例代码如下:
<?php // 假设使用 composer 安装 require_once __DIR__ . '/vendor/autoload.php'; use Tos\TosClient; use Tos\Exception\TosClientException; use Tos\Exception\TosServerException; use Tos\Model\CreateBucketInput; use Tos\Model\Enum; try { $client = new TosClient([ 'region' => 'your region', 'endpoint' => 'your endpoint', // 从环境变量中获取访问密钥 'ak' => getenv('TOS_ACCESS_KEY'), 'sk' => getenv('TOS_SECRET_KEY'), ]); $input = new CreateBucketInput('bucket-test'); // 设置桶的 ACL $input->setACL(Enum::ACLPublicRead); // 设置桶的 AZ 属性,并不是所有区域都支持设置桶的 AZ 属性 $input->setAzRedundancy(Enum::AzRedundancySingleAz); // 设置桶的 StorageClass $input->setStorageClass(Enum::StorageClassIa); $output = $client->createBucket($input); echo $output->getRequestId() . PHP_EOL; } catch (TosClientException $ex) { echo $ex->getMessage() . PHP_EOL; } catch (TosServerException $ex) { echo $ex->getRequestId() . PHP_EOL; echo $ex->getStatusCode() . PHP_EOL; echo $ex->getErrorCode() . PHP_EOL; }