(PHP 3, PHP 4 >= 4.0.0)
mail -- Invio mail
Descrizione
bool mail
(string a, string soggetto, string messaggio [, string
header_addizionali, string
[parametri_addizionali]])
mail() invia automaticamente il messaggio specificato
in messaggio al destinatario specificato in
a. Destinatari multipli possono essere specificati
mettendo una virgola tra ogni indirizzo in a.
Esempio 1. Inviare mail.
mail("rasmus@lerdorf.on.ca", "Soggetto", "Linea 1\nLinea 2\nLinea 3");
|
|
Se viene passata come parametro una quarta stringa, questa stringa viene inserita
alla fine dell'intestazione (header). Ciò viene tipicamente usato per aggiungere intestazioni
supplementari. Multipli intestazioni supplementari sono separati da un carattere di "a capo" (newline).
Esempio 2. Invio di mail con intestazioni supplementari.
mail("nobody@aol.com", "soggetto", $messaggio,
"From: webmaster@$SERVER_NAME\nReply-To: webmaster@$SERVER_NAME\nX-Mailer: PHP/" . phpversion());
|
|
Con il quinto parametro è possibile impostare dei parametri addizionali a linea di comando per
l'attuale mailer. Nell'esempio che segue viene impostato il corretto valore per il Return-Path per
sendmail. Normalmente sendmail aggiunge l'intestazione X-Authentication-Warning
quando si utilizza il parametro -f, questo perchè l'utente del webserver probabilmente non è
membro degli utenti trusted. Per annullare questo warning, occorre inserire l'utente del web server
tra gli utenti trusted nel file di configurazione di sendmail.
Nota:
Questo quinto parametro è stato aggiunto in PHP 4.0.5.
Esempio 3. Invio di mail con intestazioni supplementari e impostazione dei parametri addizionali a linea di comando.
mail("nobody@aol.com", "soggetto", $messaggio,
"From: webmaster@$SERVER_NAME", "-fwebmaster@$SERVERNAME");
|
|
E' possibile costruire messaggi complessi utilizzando la tecnica di concatenazione delle stringhe.
Esempio 4. Invio di mail complessa.
/* destinatari */
$destinatari .= "Mary <mary@u.college.edu>" . ", " ; //note the comma
$destinatari .= "Kelly <kelly@u.college.edu>" . ", ";
$destinatari .= "ronabop@php.net";
/* soggetto */
$soggetto = "Promemoria compleanno per Agosto";
/* messaggio */
$messaggio .= "La seguente mail include una tabella ASCII formattata\n";
$messaggio .= "Giorno \t\tMese \t\tAnno\n";
$messaggio .= "3-terzo \t\tAgo \t\t1970\n";
$messaggio .= "17-esimo\t\tAgo \t\t1973\n";
/* è possibile inserire una blocco con la firma */
$messaggio .= "--\r\n"; //Delimitatore di firma
$messaggio .= "Promemoria di compleanno con senza proprietà d'autore ma di pubblico dominio";
/* intestazioni addizionali per errori, campo CC, BCC, etc */
$intestazioni .= "From: Birthday Reminder <birthday@php.net>\n";
$intestazioni .= "X-Sender: <birthday@php.net>\n";
$intestazioni .= "X-Mailer: PHP\n"; // mailer
$intestazioni .= "X-Priority: 1\n"; // Messaggio urgente!
$intestazioni .= "Return-Path: <birthday@php.net>\n"; // Indirizzo di ritorno per errori
/* Se si vuole inviare una mail in formato html, togliere il commento alla seguente linea */
// $intestazioni .= "Content-Type: text/html; charset=iso-8859-1\n"; // Tipo Mime
$intestazioni .= "cc:birthdayarchive@php.net\n"; // CC in copia a
$intestazioni .= "bcc:birthdaycheck@php.net, birthdaygifts@php.net\n"; // BCC in copia cieca a
/* ed infine l'invio */
mail($destinatari, $soggetto, $mesaggio, $intestazioni);
|
|