2014-11-25 9 views
6

Sto cercando di utilizzare le informazioni di debug dei mailer php da visualizzare in una pagina web. Quando abilito il debug, solo echo è la stringa. Ciò significa che il mio html è fuori uso, desidero quindi l'output come variabile in modo da poter posizionare l'output html dove lo voglio.phpmailer invia l'output di debug alla variabile html

$mail->SMTPDebug = 2; 
$mail->Debugoutput = 'html'; 

risposta

11

Un recente cambiamento nella PHPMailer allows Debugoutput to be a closure, in modo da poter fargli fare quello che vuoi, ad esempio per raccogliere tutto l'output di debug ed emettono in un secondo momento:

$debug = ''; 
$mail->Debugoutput = function($str, $level) { 
    $GLOBALS['debug'] .= "$level: $str\n"; 
}; 
//...later 
echo $debug; 
+0

eccellente, ha funzionato a meraviglia. grazie. – psycotik

+1

Non manca questo ';' dopo '}'? – pgr

+0

Sì, risolto, grazie. – Synchro