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

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

问题描述:

我想通过AWS SDK for PHP将文件上传到AWS的S3。我想通过'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。我认为Aws \ Common \ Enum \ Region不存在于cakephp3中。

请帮帮我。 谢谢。

+0

保存自己的麻烦,只使用http://flysystem.thephpleague.com/ – ADmad

+1

你也可以使用这个插件https://github.com/burzum/cakephp-file-storage – ADmad

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