你好,我目前正在使用Rackspace OpenCloud File PHP API来存储不同项目中的文件,但我有使用嵌套容器的要求。
我在本地电脑上有一个软件,它被映射到一个名为/Act/的容器
我需要将Act文件夹作为默认文件夹,而不是根文件夹。
例如:
/法案/12-测试公司/
而不是
/12-测试公司/
<?php
$query = "SELECT clientNAME FROM CRM_clients WHERE clientID = '$client'";
$result = mysqli_query($db, $query);
$rows = mysqli_num_rows($result);
$row = clean_fetch_assoc($result);
$name = $row['clientNAME'];
$containers = $objectStoreService->listContainers();
var_dump($containers);
$ContainerExists = 0;
foreach ($containers as $container) {
$ContainerName = $container->name;
if ( strpos($ContainerName, $client) !== false ) {
$ContainerExists = 1;
}
}
if ( $ContainerExists == 1 ) {
$containerCONCAT = $client . " - " . $name;
$container = $objectStoreService->getContainer($containerCONCAT);
}elseif ( $ContainerExists == 0 ) {
$containerCONCAT = $client . " - " . $name;
$container = $objectStoreService->createContainer($containerCONCAT);
$container = $objectStoreService->getContainer($containerCONCAT);
}
//Get list of files
$objects = $container->objectList();
?>
有什么想法吗?
您可以使用一些方便的方法。
当列出容器时,可以根据其前缀进行过滤:
$containers = $service->listContainers(['prefix' => $client]);
要检查容器是否存在,可以使用:
$name = sprintf("%s-%s", $client, $container->name);
if ($service->containerExists($name)) {
除此之外,你应该能够做你想做的事
如果您遇到特定错误,请将其发布在此处,或向其开发人员页面上列出的支持电子邮件发送HTTP堆栈跟踪。