| 
<?php
use SinFramework\Storage\LocalStorage;
 
 require '../bootstrap.php';
 require '../vendor/autoload.php';
 
 //OUR GLOBAL VARS FOR THIS EXAMPLE
 $file    = 'demo.txt';
 $fileID    = '1234567890_1234567890';
 $bucket = 'mybucket';
 
 //GET STORAGE OBJECT
 $storage = getStorageObj();
 
 //DOWNLOAD FILE
 try {
 $storage->getFile($fileID, $file, $bucket);
 exit; //DOWNLOAD SHOULD BE LAST ACTION PERFORMED ON SCRIPT, SO WE FORCEFULLY EXIT ON THIS EXAMPLE
 } catch (Exception $e) {
 die($e->getMessage());
 }
 
 //THIS FUNCTION IS RESPONSIBLE FOR CREATING AND SETTING UP THE STORAGE OBJECT
 //IN A REAL WORLD APPLICATION, IT SHOULD BE CONTAINED IN SOME KIND OF DEPENDENCY INJECTOR CONTAINER
 /**
 * @return \SinFramework\Storage\StorageInterface
 */
 function getStorageObj() {
 $storageObj = new LocalStorage();
 $storageObj::setBaseStorageLocation('../storage');
 
 return $storageObj;
 }
 |