Я пытаюсь создать экземпляр Amazon AWS SDK PHP с помощью следующего кода:
require("../aws/aws-autoloader.php");
use Aws\S3\S3Client;
use Aws\Common\Aws;// Instantiate the client.
$aws = Aws::factory('awsConfig.php');
$s3Client = $aws->get('s3');
Однако я получаю возвращенную следующую ошибку:
Неопознанная ошибка: класс ‘Aws \ Common \ Aws’ не найден
Файл aws-autoloader не был изменен из исходного кода, поэтому не совсем уверен, почему он не находит класс?
Вы используете AWS SDK для PHP v3, пытаясь выполнить код для AWS SDK для PHP v2. Вы должны использовать Aws\Sdk
вместо Aws\Common\Aws
,
AWS предоставляет руководство по миграции, в котором подчеркиваются различия между версией 2 и версией 3:
С версии 3 SDK
Ключевые отличия:
Используйте класс Aws \ Sdk вместо Aws \ Common \ Aws.
Нет файла конфигурации. Вместо этого используйте массив для конфигурации.
Опция ‘version’ требуется во время создания экземпляра.
Используйте методы create () вместо get (»).
Других решений пока нет …