Вам не нужно создавать папки, как обычно, в файловой директории на диске. В облачном хранилище все объекты, даже папки. здесь - полное объяснение того, как работают каталоги.
Поскольку все является объектом, вы можете создавать папки, так как файлы создаются только путем окончания имени с косой чертой '/' или с помощью "$ folder $ "
Другой способ - это когда вы создаете файл в вашем ведре так же, как часть имени помещает папки. т.е. дать полное имя как / folder / subfolder / file
Я напишу пример на PHP с использованием клиентской библиотеки
use Google\Cloud\Storage\StorageClient;
/**
* Upload a file.
*
* @param string $bucketName the name of your Google Cloud bucket.
* @param string $objectName the name of the object.
* @param string $source the path to the file to upload.
*
* @return Psr\Http\Message\StreamInterface
*/
function upload_object($bucketName, $objectName, $source, $folder)
{
$storage = new StorageClient();
$file = fopen($source, 'r');
$bucket = $storage->bucket($bucketName);
$object = $bucket->upload($file, [
'name' => $folder."/".$objectName
]);
printf('Uploaded %s to gs://%s/%s' . PHP_EOL, basename($source), $bucketName, $objectName);
}
Если вы хотите использовать REST API для этогоВажно избегать специальных символов в именах, чтобы иметь возможность передавать их как URL-адреса