2016-07-11 3 views
0

Ich versuche, in einem meiner Skripte von der folgenden Meldung, um loszuwerden, bei der Verwendung der PHPmailer parseAddresses Funktion:PHPmailer parseAddresses - Wie loswerden „notice“ -Nachrichten

Hinweis: Unknown: Muss Komma zu getrennten Adressen: in Unknown xxx (ERRFLG = 3) auf der Leitung 0

$mailer = new PHPMailer(true); 
try { 
    $a = $mailer->parseAddresses('[email protected] xxx'); 
} 
finally { 
    ... 
} 

ich verwende PHP 7.0.8 mit dem folgenden Fehlerbehandlung Voreinstellungen:

declare(strict_types = 1); 
error_reporting(E_ALL); 
ini_set('display_errors', 'stdout'); 

Ich weiß, dass ich die Fehler einfach stoppen kann, aber das scheint nicht der richtige Weg zu sein. Und natürlich weiß ich, dass die angegebenen E-Mail-Adressen in meinem Beispiel nicht korrekt sind ...

Antwort

0

Ich bin mir nicht sicher, worüber Sie sich beschweren: Es sagt Ihnen, dass Sie fehlerhafte Eingabe haben, wenn Sie fehlerhafte Eingabe bereitstellen! Der Weg, den Fehler zu vermeiden, besteht darin, fehlerhafte Eingaben nicht zu übergeben!

Wie der Fehler sagt, es wird erwartet, eine oder mehrere Adressen in kommagetrennte RFC822-Format (nicht das, was Sie zur Verfügung gestellt), die wie etwas sein könnte:

xxx <[email protected]>, yyy <[email protected]> 

Wenn Sie in die bieten keine Daten Format, es wird sich beschweren, wie Sie sehen. Dies ist abgedeckt in the docs über die parseAddress Methode.

Erwarten Sie es etwas anderes zu tun?

+0

Wie ich bereits erwähnt in meiner Frage - ich weiß, dass die Eingabe nicht korrekt ist, aber wie kann ich die Warnmeldung erfassen, bevor es den Benutzer angezeigt wird? Der Versuch/Fang-Ansatz funktioniert nicht. Und ich möchte nicht nur Fehler oder Warnungen "unterdrücken". –

+0

Die Lösung ist, sicherzustellen, dass es im richtigen Format ist, bevor Sie übergeben es in. Der Zweck 'parseAddresses' ist eine gültige RFC822 Adresszeile in ein Array von Adressen zu brechen. Wenn Sie das nicht möchten, verwenden Sie es nicht. – Synchro

+0

Danke. Und um zu prüfen, ob die Adressen im richtigen Format sind, benutze ich ... parseAddresses? –