Da PHP Version 5.5 nicht mehr von der Community unterstützt wird, empfehlen wir neuen Anwendungen dringend, die PHP 7-Laufzeit zu verwenden.

E-Mails mit der Mail API senden und empfangen

Mit der Mail API können Sie E-Mails senden und empfangen.

Informationen dazu, wer E-Mails senden kann, und Richtlinien zum Senden von Massen-E-Mails finden Sie unter Mail API. Hinweis: Ein Großteil der in diesem Dokument verlinkten Seiten steht nur auf Englisch zur Verfügung.

Hinweis

Sie müssen Ihre Absenderadressen als autorisierte Absender registrieren. Weitere Informationen finden Sie unter Wer kann E-Mails senden?.

E-Mails senden

Mit der integrierten PHP-Funktion mail() können Sie E-Mails über die App Engine Mail API senden. Dies funktioniert in der Regel mit dem vorhandenen Code, wenn die Einschränkungen berücksichtigt werden, die unter E-Mails senden aufgeführt sind.

Alternativ können Sie die Mail API direkt aufrufen:

use google\appengine\api\mail\Message;

// 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';
}

E-Mails empfangen

Sie können Ihre Anwendung dafür einrichten, E-Mails über Adressen mit dem folgenden Format zu empfangen:

anything@appid.appspotmail.com

So empfangen Sie E-Mails:

  1. Aktivieren Sie eingehende E-Mails in der Datei app.yaml Ihrer Anwendung. Fügen Sie Folgendes zu inbound_services hinzu:

    - mail
  2. Erstellen Sie in Ihrer Konfigurationsdatei Zuordnungen von URL-Pfaden, die E-Mail-Adressen darstellen, zu Handlern im Code Ihrer Anwendung. Das Muster /_ah/mail/.+ stimmt mit allen Adressen eingehender E-Mails überein.

    - url: /_ah/mail/.+
      script: handle_incoming_email.php
      login: admin
  3. Implementieren Sie Code für die Handler, die Sie in Ihrem Anwendungscode angegeben haben.

    Sie können die MIME-Daten von php://input lesen und den E-Mail-Inhalt mithilfe von Mailparse parsen.