Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/261.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Rackspace php opencloud如何创建文件夹_Php_Directory_Rackspace_Php Opencloud - Fatal编程技术网

Rackspace php opencloud如何创建文件夹

Rackspace php opencloud如何创建文件夹,php,directory,rackspace,php-opencloud,Php,Directory,Rackspace,Php Opencloud,当我使用$container->uploadObjects($files)上传文件时,我可以在名称中包含目录路径以创建新文件夹。如果我使用Cyberduck,我可以看到新文件夹 但是,如果我尝试使用$container->objectList($options)获取对象列表,它不会像[content\u type]=>application/directory那样列出目录。但当我使用Cyberduck时,它确实是这样 所以我的问题是,如何使用php opencloud创建文件夹 这与php op

当我使用
$container->uploadObjects($files)
上传文件时,我可以在名称中包含目录路径以创建新文件夹。如果我使用Cyberduck,我可以看到新文件夹

但是,如果我尝试使用
$container->objectList($options)
获取对象列表,它不会像
[content\u type]=>application/directory
那样列出目录。但当我使用Cyberduck时,它确实是这样


所以我的问题是,如何使用php opencloud创建文件夹

这与php opencloud无关,但它是对CloudFile的限制。与AWS S3和其他分布式对象存储非常相似,您不能在bucket中包含目录。有些软件,比如Cyberduck,知道这一点,它用层次结构重命名文件,并将这些层次结构显示为目录,即使它们都位于容器的同一级别。关于详细的解释,请查看。

6年后,我不得不自己用PHP Opencloud来做这件事,我想我会发布我的方法,因为你实际上可以创建不包含文件的文件夹。上传时,您只需设置适当的内容类型:

$container = $objectStoreService->getContainer('container-name');
$container->uploadObject('folder-path-and-name-to-create', '', array('Content-Type' => 'application/directory'));