AWS php sdk不适用于PHP 7

Shuhail Alam |

以下代码在PHP 5.6中运行良好。

require_once '../aws/aws-autoloader.php';

$config = [
    'region'  => 'ap-south-1',
    'version' => 'latest',
    'credentials' => [
        'key'    => '...',
        'secret' => '...'
    ]
];

$sdk = new Aws\Sdk($config);

$client = $sdk->createS3();

但是在PHP 7上,它会通过错误:

Fatal error: Uncaught TypeError: Argument 1 passed to Aws\Common\Client\AbstractClient::__construct() must be an instance of Aws\Common\Credentials\CredentialsInterface, array given, called in /var/www/html/webservice/vendor/aws3/Aws/Sdk.php on line 316 and defined in /var/www/html/aws-sdk/vendor/aws/aws-sdk-php/src/Aws/Common/Client/AbstractClient.php:75 Stack trace: #0 /var/www/html/webservice/vendor/aws3/Aws/Sdk.php(316): Aws\Common\Client\AbstractClient->__construct(Array) #1 /var/www/html/webservice/vendor/aws3/Aws/Sdk.php(291): Aws\Sdk->createClient('S3', Array) #2 index.php(14): Aws\Sdk->__call('createS3', Array) thrown in /var/www/html/aws-sdk/vendor/aws/aws-sdk-php/src/Aws/Common/Client/AbstractClient.php on line 75

请建议我如何使其在PHP 7上运行。

谢谢。

更新:我的项目中同时拥有2和3版的AWS开发工具包。这可能是冲突的问题。那么如何解决冲突呢?

Shuhail Alam |

此问题在PHP 7.0中没有任何问题。冲突SDK版本2和3就是这种情况。

这两个SDK不能一起使用。所以我不得不升级到SDK 3。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章