L'invio di email da una pagina web è un compito abbastanza comune, e spesso l'invio un file allegato è necessario---forse si sta inviando un dump di database o di un'immagine che un utente caricato. Mentre la libreria PHP standard contiene funzionalità per inviare regolari, e-mail di testo normale, il supporto per funzionalità più avanzate di posta elettronica (ad esempio HTML e allegati) è disponibile ma può sembrare complicato per l'utente inesperto. Queste caratteristiche, tuttavia, sono fornite dal pacchetto PEAR::Mail_Mime, che è liberamente disponibile dal repository di pera. Pera è un sistema di distribuzione di componenti PHP che contiene classi e librerie PHP gratis ed è un ideale punto di partenza quando si intraprende una nuova attività in PHP.
Istruzioni
1
Installare il pacchetto di PEAR::Mail_Mime sul vostro sistema (piattaforma di sviluppo e server). (Se il vostro sistema non dispone di pera installato, vedere "Risorse"). Utilizzare il seguente comando al prompt della riga di comando:
Pera installare Mail_Mime
Questo installerà l'ultima versione del pacchetto di Mail_Mime dai repository di pera.
2
Aprire lo script PHP in ambiente di editor/sviluppo testo di scelta. Può trattarsi di uno script PHP esistente che avete intenzione di aggiungere la funzionalità di o un nuovo script per comprendere le funzionalità di posta per il tuo sistema.
3
Includere gli script mail. php e Mail/mime.php nello script php:
<? php
include('Mail.php');
include('Mail/MIME.php');
4
Costruire il contenuto del vostro messaggio (dopo le dichiarazioni di cui sopra "includono") e informazioni correlate:
$msgText = "questo è il testo dell'email. Piuttosto noiosa, eh? ";
$msgHtml = "< html >< corpo > questa è la mail HTML - < forte > super cool! < / strong >< / corpo >< / html >";
$toAttach = "/ path/to/our/file.txt";
$msgHeaders = array ('From' = > '[email protected]', 'Subject' = > ' questo è un messaggio di prova. Ci sono molti come lui, ma questo è il mio.');
5
Creare l'oggetto Mail_Mime (ancora una volta, sotto che cosa è stato aggiunto sopra):
parametro è facoltativo, ma abbiamo bisogno di impostarlo su "\n", dato che stiamo andando a inviarlo
tramite il pacchetto Mail
$mailMime = nuovo Mail_Mime('\n');
$mailMime -> setTXTBody($msgText);
$mailMime -> setHTMLBody($msgHtml);
$mailMime -> addAttachment ($toAttach, ' testo ');
6
Costruire l'oggetto di posta utilizzato per inviare il messaggio:
$msgBody = $mailMime -> Get ();
$msgHeaders = $mailMime -> headers($msgHeaders);
$mailObject = & Mail::factory('mail');
$mailObject -> send ('[email protected]', $msgHeaders, $msgBody);