phpbar.de logo

Mailinglisten-Archive

[php] Mail | Arrayverarbeitung | Pear-Error

[php] Mail | Arrayverarbeitung | Pear-Error

Olaf Gleba list at creatics.de
Sam Sep 18 11:40:32 CEST 2004


Hallo,

ich will einen zusätzlichen Bcc header mit mehreren Bcc Empfängern an die
Mail.php des PEAR Pakets 'Mail' übergeben.
Damit das korrekt mit mehr als einem Bcc-Empfänger geht, habe ich in der
'Mail.php' die Methode 'prepareHeaders' um ein paar Zeilen ergänzt. [1]

Kann mir jemand sagen, warum das A korrekt ohne Fehler abgearbeitet wird und
B einen PEAR_MAIL_FAILED (mail() returned failure) Error erzeugt ?

A:
Ich übergebe ein per Hand erzeugtes Array an das $headers Array.
$headers['Bcc']     = array("foo at bar.de","foo2 at bar.de, foo3 at bar.de");

Ergebnis geht richtig in das $lines[] Array und wird ohne Fehler korrekt
ausgeliefert.

B:
Ich bilde ein Array von Bcc Empfängern.

$new = array();
$new = explode(', ', $recipientsBcc);

Ich übergebe das Array an das $headers Array.
$headers['Bcc']     = $new;

Ergebnis geht richtig in das $lines[] Array, triggert aber o.g. Fehler. Mail
wird aber korrekt ausgeliefert (mit Bcc).


Mir ist nicht ganz klar, warum in dem einen Fall ein Error getriggert wird
und in dem anderen nicht. Die Testausgabe (der in der Methode zu bildende
$lines[] Array; s. [1]) ist in beiden Fällen identisch!

Wäre dankbar für einen Tipp. Trotz Wochenende ;)

gruss
Olaf



[1] ca. Zeile 147; 'pear/Mail.php'

elseif ($key === 'Bcc' AND is_array($value)) {

    $value = implode(', ', $value);
                
    $lines[] = $key . ': ' . $value;
                
    // Ausgabekontrolle
    print "<br /><br />";
    print_r($lines);
 }


-- 
creatics media.systems : Grünstr. 25 : D-42697 Solingen
tel. +49 212 38 32 94 30 : fax. +49 212 38 32 94 31
mailto:og at creatics.de : http://www.creatics.de


php::bar PHP Wiki   -   Listenarchive