Nota: il 30 gennaio 2024 è terminato il supporto di PHP 5. Le applicazioni PHP 5 esistenti continueranno a funzionare e a ricevere traffico. Tuttavia, App Engine potrebbe bloccare il nuovo deployment delle applicazioni
che utilizzano i runtime
dopo la data di fine del supporto.
Ti consigliamo di eseguire la migrazione alla versione più recente di PHP supportata.
Questa guida descrive come utilizzare l'API Mail per inviare e ricevere email.
Prima di iniziare
Devi registrare i tuoi indirizzi email come mittenti autorizzati. Per ulteriori informazioni, consulta Chi può inviare email.
Invio di email
La funzione mail()
incorporata in PHP può inviare email tramite l'API Mail di App Engine. Dovrebbe funzionare bene con la maggior parte del codice esistente, a condizione che sia conforme alle limitazioni elencate nella sezione Invio di email.
In alternativa, puoi effettuare chiamate dirette all'API Mail:
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';}
Ricezione della posta
Puoi configurare la tua app in modo che riceva le email in arrivo agli indirizzi nel seguente formato:
anything@appid.appspotmail.com
Per ricevere email:
Attiva la posta in arrivo nel file app.yaml dell'app. Aggiungi quanto segue al
inbound_services:
-mail
Nel file di configurazione, crea mappature dai percorsi URL che rappresentano gli indirizzi email ai gestori nel codice dell'app. Il pattern /_ah/mail/.+
corrisponde a tutti gli indirizzi email in arrivo:
[[["Facile da capire","easyToUnderstand","thumb-up"],["Il problema è stato risolto","solvedMyProblem","thumb-up"],["Altra","otherUp","thumb-up"]],[["Difficile da capire","hardToUnderstand","thumb-down"],["Informazioni o codice di esempio errati","incorrectInformationOrSampleCode","thumb-down"],["Mancano le informazioni o gli esempi di cui ho bisogno","missingTheInformationSamplesINeed","thumb-down"],["Problema di traduzione","translationIssue","thumb-down"],["Altra","otherDown","thumb-down"]],["Ultimo aggiornamento 2025-03-06 UTC."],[[["This guide outlines how to utilize the Mail API for sending and receiving emails within the context of App Engine, particularly for first-generation runtimes."],["PHP's built-in `mail()` function can send emails using the App Engine Mail API, and direct calls to the API are also possible using the `google\\appengine\\api\\mail\\Message` class."],["Before sending emails, you must register your sender email addresses as authorized senders, according to the Mail API's guidelines."],["To receive emails, enable incoming mail in your `app.yaml` file, create URL mappings for incoming email addresses, and implement handlers in your app's code to process the received mail using the Mailparse extension."],["Your app can receive incoming emails at addresses formatted as `anything@appid.appspotmail.com`, even if your app is deployed on a custom domain, as you cannot use custom domain addresses to receive emails."]]],[]]