• Object Storage Service

obs
  1. Help Center
  2. Object Storage Service
  3. Developer Guide (PHP SDK)
  4. Object Upload
  5. Creating a Folder

Creating a Folder

There is no folder concept in OBS. All elements in buckets are objects. To create a folder in OBS is essentially to create an object whose size is 0 and whose name ends with a slash (/). Such objects have no difference from other objects and can be downloaded and deleted, except that they are displayed as folders in OBS Console.

// Import the third-party open source libraries.
require 'vendor/autoload.php';
// Import the SDK code library.
require 'obs-autoloader.php';
// Declare the namespace.
use Obs\S3\ObsClient;
// Create an instance of ObsClient.
$obsClient = new ObsClient([
       'key' => '*** Provide your Access Key ***',
       'secret' => '*** Provide your Secret Key ***',
       'endpoint' => 'https://yourdomainname'
]);

$resp = $obsClient->putObject([
       'Bucket' => 'bucketname',
       'Key' => 'parent_directory/'
]);

printf("RequestId:%s\n",$resp['RequestId']);
// Create an object in the folder.
$resp = $obsClient->putObject([
       'Bucket' => 'bucketname',
       'Key' => 'parent_directory/objectkey',
       'Body' => 'Hello OBS',
]);

printf("RequestId:%s\n",$resp['RequestId']);
NOTE:
  • To create a folder in OBS is to create an object whose size is 0 and whose name ends with a slash (/), in essential.
  • To create a multi-level folder, you only need to create the folder with the last level. For example, if you want to create a folder named src1/src2/src3/, create it directly, no matter whether the src1/ and src1/src2/ folders exist.