我想通过'AWS SDK for PHP'将文件上传到AWS的S3

时间:2015-11-03 03:49:28

标签: cakephp amazon-web-services amazon-s3 cakephp-3.0 aws-sdk

我想通过AWS SDK for PHP将文件上传到AWS的S3。

<?php
    namespace App\Controller;

    require('/var/www/html/imagine/src/vendor/autoload.php');   

    use App\Controller\AppController;

    use Cake\ORM\TableRegistry;

    use Aws\Common\Aws;
    use Aws\Common\Enum\Region;

    use Aws\S3\S3Client;
    use Aws\S3\Enum\CannedAcl;
    use Aws\S3\Exception\S3Exception;

    use Guzzle\Http\EntityBody;

class ImagesController extends AppController {
    public function upload(){

        $client = S3Client::factory(array(
            //'profile' => 'default',
            "key" => "*******",
            "secret" => "**********",
            "region" => Aws\Common\Enum\Region::AP_NORTHEAST_1
        ));
    }
}

但在这种情况下,会显示以下错误消息:

Error: Class 'Aws\Common\Enum\Region' not found 
File /var/www/html/imagine/src/Controller/ImagesController.php 

我使用cakephp3。我认为在cakephp3中不存在Aws \ Common \ Enum \ Region。

请帮帮我。 谢谢。

1 个答案:

答案 0 :(得分:0)

我看到advanced-indexing的使用,这使得认为AWS自动加载器类没有导入所有库类。您使用什么composer命令来安装AWS库?另外,我们能否看到require('/var/www/html/imagine/src/vendor/autoload.php');的内容。