Mail API でメールを送信する

このガイドでは、Mail API を使用してメールを送信する方法について説明します。

始める前に

送信者のメールアドレスを承認済み送信者として登録します。詳細については、メールを送信できるユーザーをご覧ください。

メールの送信

デフォルトでは、PHP 7 / 8 の App Engine の Mail 関数はオーバーロードされないため、明示的に有効にする必要があります。この新しい動作では、要件に合わせて Mail 関数を再利用できます。この変更により、現在すべての Mail 関数の呼び出しで、どの実装が使用されているかも把握できます。

ネイティブの PHP mail() 関数を使用して、App Engine Mail API でメールを送信する場合は、次のように php.ini ファイルで有効にできます。

extension = mailparse.so
sendmail_path = "php ./vendor/google/appengine-php-sdk/src/Runtime/SendMail.php -t -i"

または、Mail API を直接呼び出すこともできます。


// Notice that $image_content_id is the optional Content-ID header value of the
// attachment. Must be enclosed by angle brackets (<>)
$image_content_id = '<image-content-id>';

// Pull in the raw file data of the image file to attach it to the message.
$image_data = file_get_contents('image.jpg');

try {
    $message = new Message();
    $message->setSender('from@example.com');
    $message->addTo('to@example.com');
    $message->setSubject('Example email');
    $message->setTextBody('Hello, world!');
    $message->addAttachment('image.jpg', $image_data, $image_content_id);
    $message->send();
    echo 'Mail Sent';
} catch (InvalidArgumentException $e) {
    echo 'There was an error';


Mail API の移行に関する考慮事項を確認する場合は、PHP 用の以前のバンドル サービスにアクセスするをご覧ください。