前提・実現したいこと
PHPにてAWS S3にファイルをアップロードする仕組みが動作していましたが、
php composer.phar update した後から
Error - Class 'EntityBody' not found
というエラーでアップロードできなくなりました。
発生している問題・エラーメッセージ
composer.phar updateのログの一部です。
- Removing guzzlehttp/streams (2.1.0)
- Removing guzzle/guzzle (v3.9.3)
- Installing guzzlehttp/psr7 (1.4.2)
Loading from cache - Installing guzzlehttp/promises (v1.3.1)
Loading from cache - Removing guzzlehttp/guzzle (4.2.4)
- Installing guzzlehttp/guzzle (6.3.3)
Loading from cache - Removing aws/aws-sdk-php (2.8.31)
- Installing aws/aws-sdk-php (3.62.8)
Writing lock file
Error - Class 'EntityBody' not found
該当のソースコード
PHP
1 use Guzzle\Http\EntityBody; 2略 3 $s3->putObject(array( 4 'Bucket' => 'バケット名', 5 'Key' => 'ファイル名', 6 'Body' => EntityBody::factory(fopen($tmpFile, 'r')) 7 )); 8
試したこと
guzzleの新しいバージョンからguzzleではなくguzzlehttpと変更されているようですが、
use Guzzlehttp\EntityBody;
としてもだめでした。
guzzleのアップデートもしくはaws-sdkが2から3への変更どちらかの問題かと思います。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/07/04 16:29