[PHP]AWS PHP SDK 讓你使用 PHP 內建的 function 存取 s3 檔案

透過以下方式,你可以使用 PHP 內建的 function 像是 file_get_contents,file_put_contents, fopen, copy, rename, unlink, mkdir, rmdir存取 s3 的檔案。

前置步驟,
下載 AWS SDK for PHP (GitHub)
並確認你的 PHP 版本 >= 5.5
因為裡面有用到一些 PHP 5.5 以上版本才有的語法,像是 yield 之類的。

1. 修改檔名


require ("/path/to/aws.phar");

// Instantiate an Amazon S3 client.
$s3 = new Aws\S3\S3Client([
    'version' => 'latest',
    'region'  => 'ap-southeast-1',
    'credentials' => array(
        'key'    => 'Your_Key',
        'secret' => 'Your_secret',
    )
]);
    
//重點在 initial 完 s3 client 之後,記得呼叫 registerStreamWrapper 
$s3->registerStreamWrapper();

rename('s3://bucket_name/filename_old', 's3://bucket_name/filename_new');

2. 刪除檔案


unlink('s3://bucket/key');

3. 在 bucket 內,新建資料夾


mkdir('s3://bucket');

更完整的說明可以參考這裡

標籤: , , , , ,

很愛畫虎爛的我,開始了用文章唬爛社會大眾的志業!