
あきぞらです。
今回は、PHPからAWS Lambdaの関数を呼び出す方法を紹介していきます。
公式には、こちらに記載があります。
aws-sdkをrequireする
まず、PHPのaws-sdkをComposerでRequireしておきます。
$ composer require aws/aws-sdk-php
Lambdaを呼び出すPHPを作成
呼び出すPHPは、以下のような感じで作っていきます。
<?php
use Aws\Lambda\LambdaClient;
use Aws\Lambda\Exception\LambdaException;
public function requestToLambdaFunction () {
try {
$functionName = "functionName"; // ここに関数名
$client = LambdaClient::factory(array(
"region" => "region",
"version" => "version",
"credentials" => [
'key' => AWS_ACCESS_KEY,
'secret' => AWS_SECRET_KEY
],
));
$result = $client->invoke(array(
'FunctionName' => $functionName,
'InvocationType' => 'Event',
'Payload' => $payload',
));
} catch (LambdaException $e) {
throw $e;
} catch (Exception $e) {
throw $e;
}
'Payload' にLambda関数に渡したいパラメータを渡してあげることができます。
認証情報(key、secret)も指定してあげることも忘れずに!