如何设置凭据使用来自aws的PHP SDK发送带有AmazonSES的电子邮件

Ale*_*lay 3 php amazon-web-services amazon-ses

我正在尝试使用最新的PHP SDK(v.1.5.0).我正在尝试发送一封包含AmazonSES的电子邮件.我已经成功发送了带有python脚本的电子邮件,所以我知道我的crendentials和其他设置都没问题.

我复制了示例代码,但它不起作用.在调用AmazonSES时,我收到一条错误消息:

Catchable fatal error: Argument 1 passed to AmazonSES::__construct() must 
be an array, string given, called in sendemail.php on line 31 and 
defined in sdk-1.5.0/services/ses.class.php on line 67
Run Code Online (Sandbox Code Playgroud)

这是代码:

        $AWS_KEY = "AKIEDIEDEIMIAXEOA";
        $AWS_SECRET_KEY = "Te+EDEwjndjndededededededj";

        require_once("../library/lib_aws/sdk-1.5.0/sdk.class.php");

        $amazonSes = new AmazonSES($AWS_KEY, $AWS_SECRET_KEY);

        $response = $amazonSes->send_email( 
                    "from@email.com",
                    array("ToAddresses" => "to@email.com"),
                    array(
                        "Subject.Data" => "test",
                        "Body.Text.Data" => "body test",
                        )
                    );

        if (!$response->isOK())
        {
            echo "error";
        }
Run Code Online (Sandbox Code Playgroud)

我找不到如何正确设置凭据以发送电子邮件.

eva*_*van 8

AmazonSES的构造函数采用带有选项的数组.检查来源:

https://github.com/amazonwebservices/aws-sdk-for-php/blob/master/services/ses.class.php#L55

你会想写它:

$amazonSes = new AmazonSES(array(
    "key" => $AWS_KEY,
    "secret" => $AWS_SECRET_KEY
));
Run Code Online (Sandbox Code Playgroud)

请单击源(或查阅文档)以确保没有其他选项需要设置.