Hello,
Die Konstante PHP_EOL ist entsprechend geladen, und sollte daher auch benutzt werden, damit PHP-Scripte ohne Nachbasteleien von WinDOSen auf Linuxhosts übertragen werden können.
Ja, aber ich würde es nicht an der Stelle tun, an der du es im Code gezeigt hast.
Was du bzgl. des Handlings durch die Mailserver schreibst, stimmt zwar im großen und ganzen - aber es gibt auch ab und zu mal welche, die davon abweichendes Verhalten zeigen.Deshalb würde ich eher an der Stelle, wo Zeilenumbrüche in Mail-Header eingefügt werden sollen, eine selbstdefinierte Konstante verwenden - die zwar mit dem Wert von PHP_EOL vorbelegt ist, aber dadurch auch einfache Anpassung an einer zentralen Stelle im Script erlaubt, falls man doch mal den „anderen“ Zeilenumbruch benötigen sollte, der nicht mit dem Wert von PHP_EOL auf dem jeweiligen System übereinstimmt.
Wann sollte das sein?
Die Mail()-Funktion von PHP verlangt bei OS=Linux eutomatisch das Setzen des "sendmail-Scriptes" und bei OS=WinDOS benutzt sie automatisch den SMTP-Server (über Port 25).
Das "Sendmail-Script" muss sich an die Gepflogenheiten auf Linuxen halten und die Zeilenumbrüche ersetzen.
Dass man hier nochmals eine Translationsschicht einzieht kann nicht falsch sein, ist aber mMn hier nicht notwendig.
Liebe Grüße aus dem schönen Oberharz
Tom vom Berg