X-Git-Url: https://gerrit.opnfv.org/gerrit/gitweb?a=blobdiff_plain;f=src%2Fceph%2Fdoc%2Fradosgw%2Fs3%2Fphp.rst;fp=src%2Fceph%2Fdoc%2Fradosgw%2Fs3%2Fphp.rst;h=0000000000000000000000000000000000000000;hb=7da45d65be36d36b880cc55c5036e96c24b53f00;hp=40542e072a2b367ab41e3c727c47f4506900d03e;hpb=691462d09d0987b47e112d6ee8740375df3c51b2;p=stor4nfv.git diff --git a/src/ceph/doc/radosgw/s3/php.rst b/src/ceph/doc/radosgw/s3/php.rst deleted file mode 100644 index 40542e0..0000000 --- a/src/ceph/doc/radosgw/s3/php.rst +++ /dev/null @@ -1,208 +0,0 @@ -.. _php: - -PHP S3 Examples -=============== - -Creating a Connection ---------------------- - -This creates a connection so that you can interact with the server. - -.. code-block:: php - - AWS_KEY, - 'secret' => AWS_SECRET_KEY, - 'canonical_id' => AWS_CANONICAL_ID, - 'canonical_name' => AWS_CANONICAL_NAME, - )); - $Connection->set_hostname($HOST); - $Connection->allow_hostname_override(false); - - // Set the S3 class to use objects.dreamhost.com/bucket - // instead of bucket.objects.dreamhost.com - $Connection->enable_path_style(); - - -Listing Owned Buckets ---------------------- -This gets a list of CFSimpleXML objects representing buckets that you -own. This also prints out the bucket name and creation date of each -bucket. - -.. code-block:: php - - list_buckets(); - $Buckets = $ListResponse->body->Buckets->Bucket; - foreach ($Buckets as $Bucket) { - echo $Bucket->Name . "\t" . $Bucket->CreationDate . "\n"; - } - -The output will look something like this:: - - mahbuckat1 2011-04-21T18:05:39.000Z - mahbuckat2 2011-04-21T18:05:48.000Z - mahbuckat3 2011-04-21T18:07:18.000Z - - -Creating a Bucket ------------------ - -This creates a new bucket called ``my-new-bucket`` and returns a -``CFResponse`` object. - -.. note:: - - This command requires a region as the second argument, - so we use ``AmazonS3::REGION_US_E1``, because this constant is ``''`` - -.. code-block:: php - - create_bucket('my-new-bucket', AmazonS3::REGION_US_E1); - - -List a Bucket's Content ------------------------ - -This gets an array of ``CFSimpleXML`` objects representing the objects -in the bucket. This then prints out each object's name, the file size, -and last modified date. - -.. code-block:: php - - list_objects($bucketname); - $Objects = $ObjectsListResponse->body->Contents; - foreach ($Objects as $Object) { - echo $Object->Key . "\t" . $Object->Size . "\t" . $Object->LastModified . "\n"; - } - -.. note:: - - If there are more than 1000 objects in this bucket, - you need to check $ObjectListResponse->body->isTruncated - and run again with the name of the last key listed. - Keep doing this until isTruncated is not true. - -The output will look something like this if the bucket has some files:: - - myphoto1.jpg 251262 2011-08-08T21:35:48.000Z - myphoto2.jpg 262518 2011-08-08T21:38:01.000Z - - -Deleting a Bucket ------------------ - -This deletes the bucket called ``my-old-bucket`` and returns a -``CFResponse`` object - -.. note:: - - The Bucket must be empty! Otherwise it won't work! - -.. code-block:: php - - delete_bucket('my-old-bucket'); - - -Forced Delte for Non-empty Buckets ----------------------------------- - -This will delete the bucket even if it is not empty. - -.. code-block:: php - - delete_bucket('my-old-bucket', 1); - - -Creating an Object ------------------- - -This creates an object ``hello.txt`` with the string ``"Hello World!"`` - -.. code-block:: php - - create_object('my-bucket-name', 'hello.txt', array( - 'body' => "Hello World!", - )); - - -Change an Object's ACL ----------------------- - -This makes the object ``hello.txt`` to be publicly readable and -``secret_plans.txt`` to be private. - -.. code-block:: php - - set_object_acl('my-bucket-name', 'hello.txt', AmazonS3::ACL_PUBLIC); - $Connection->set_object_acl('my-bucket-name', 'secret_plans.txt', AmazonS3::ACL_PRIVATE); - - -Delete an Object ----------------- - -This deletes the object ``goodbye.txt`` - -.. code-block:: php - - delete_object('my-bucket-name', 'goodbye.txt'); - - -Download an Object (to a file) ------------------------------- - -This downloads the object ``poetry.pdf`` and saves it in -``/home/larry/documents/`` - -.. code-block:: php - - get_object('my-bucket-name', 'poetry.pdf', array( - 'fileDownload' => $FileHandle, - )); - - -Generate Object Download URLs (signed and unsigned) ---------------------------------------------------- - -This generates an unsigned download URL for ``hello.txt``. -This works because we made ``hello.txt`` public by setting -the ACL above. This then generates a signed download URL -for ``secret_plans.txt`` that will work for 1 hour. -Signed download URLs will work for the time period even -if the object is private (when the time period is up, -the URL will stop working). - -.. code-block:: php - - get_object_url('my-bucket-name', 'hello.txt'); - echo $plans_url . "\n"; - my $secret_url = $Connection->get_object_url('my-bucket-name', 'secret_plans.txt', '1 hour'); - echo $secret_url . "\n"; - -The output of this will look something like:: - - http://objects.dreamhost.com/my-bucket-name/hello.txt - http://objects.dreamhost.com/my-bucket-name/secret_plans.txt?Signature=XXXXXXXXXXXXXXXXXXXXXXXXXXX&Expires=1316027075&AWSAccessKeyId=XXXXXXXXXXXXXXXXXXX -