(PHP 4, PHP 5)
mail — trimite mail
Descriere
mail() trimite automat mesajele specificate în message către destinatarul specificat în to . Pot fi specificaÅ£i mai mulÅ£i destinatari, separând adresele prin virgulă în parametrul to . Pot fi trimise e-mail-uri cu fiÅŸiere ataÅŸate ÅŸi cu tipuri speciale de conÅ£inut utilizând această funcÅ£ie. Aceasta se realizează prin codificare MIME; Pentru mai multe informaÅ£ii vezi » un articol ZEND sau » Clasele PEAR - MIME.
Următoarele RFC-uri pot fi, de asemenea, folositoare: » RFC 1896, » RFC 2045, » RFC 2046, » RFC 2047, » RFC 2048, ÅŸi » RFC 2049.
mail() returnează TRUE dacă mailul a fost trimis cu succes, FALSE în caz contrar.
Example#1 Trimiterea unui e-mail.
mail("joecool@example.com", "Subiectul", "Linia 1\nLinia 2\nLinia 3");
Dacă şi cel de-al patrulea argument este trimis către funcţie, acest şir este inserat la finalul antetului. Acest parametru se utilizează pentru a adăuga antete adiţionale. Antetele multiple se separă cu un început de rînd (\r) şi cu o linie nouă (\n).
Notă: Trebuie utilizată combinaţia \r\n pentru separarea antetelor, cu toate că unii agenţi de transfer mail din Unix pot lucra cu un singur caracter linie nouă (\n). Antetul Cc: este sensibil la distincţia majuscule/minuscule şi trebuie scris Cc: pe sisteme Win32. Antetul Bcc: nu este suportat pe sistemele Win32.
Example#2 Trimiterea de mail-uri cu antete adiţionale.
mail("nobody@example.com", "subiectul", $mesaj, "From: webmaster@$NUME_SERVER\r\n" ."Reply-To: webmaster@$NUME_SERVER\r\n" ."X-Mailer: PHP/" . phpversion());
additional_parameters poate fi utilizat pentru a trimite parametri adiţionali programului folosit pentru trimiterea de e-mail-uri specificat în sendmail_path. De exemplu aceşti parametri adiţionali pot fi folosiţi pentru a indica adresa expeditorului. Pentru a preveni trimiterea unui antet 'X-Warning' odată cu mesajul atunci când utilizaţi această metodă este posibil să fie necesar să adăugaţi utilizatorul care rulează serverul web.
Example#3 Expedierea de mesaje cu antete adiţionale şi setarea unui parametru linie de comandă adiţional.
mail("nimeni@exemplu.com", "subiectul", $mesaj, "From: webmaster@$SERVER_NAME", "-fwebmaster@$SERVER_NAME");
Notă: Cel de-al cincilea parametru a fost adăugat în PHP 4.0.5.
Se pot utiliza ÅŸiruri simple pentru a constru mesaje de e-mail complexe.
Example#4 Expedierea de mesaje complexe.
/* destinatari */ $catre = "Mary <mary@example.com>" . ", " ; //notaţi virgula $catre .= "Kelly <kelly@example.com>"; /* subiect */ $subiect = "Zile de naştere în august"; /* mesaj */ $mesaj = ' <html> <head> <title>Zile de naştere în august</title> </head> <body> <p>Zile de naştere care se sărbătoresc în august!</p> <table> <tr> <th>Persoana</th><th>Ziua</th><th>Luna</th><th>Anul</th> </tr> <tr> <td>Joe</td><td>3</td><td>august</td><td>1970</td> <td>Sally</td><td>17</td><td>august</td><td>1973</td> </tr> </table> </body> </html> '; /* Pentru a trimite un e-mail în format HTML trebuie setat antetul Content-type. */ $antete = "MIME-Version: 1.0\r\n"; $antete .= "Content-type: text/html; charset=iso-8859-1\r\n"; /* Antete adiţionale */ $antete .= "From: Monitorizare zile de nastere <birthday@example.com>\r\n"; $antete .= "Cc: birthdayarchive@example.com\r\n"; $antete .= "Bcc: birthdaycheck@example.com\r\n"; /* Şi acum să-i dăm drumul... */ mail($catre, $subiect, $mesaj, $antete);
Notă: Aveţi grijă să nu fie vreun caracter linie nouă (\n) în parametrii to sau subject , dacă doriţi ca mesajul să fie trimis.