De:Tipps und Tricks:PHP-spezifische Tipps
De:Tipps und Tricks:PHP-spezifische Tipps
[edit] PHP-Includes
Falls Ihre Seite PHP-Includes enthält, stellen Sie sicher, dass sich hinter dem Ende des PHP-Codes ( ?>) keine Leerzeilen befinden. Zumindest in PHP 4.3.x würden diese in den Text-Stream eingefügt und xajax würde das resultierende XML nicht verabeiten. - GJD 12/12/05
Tatsächlich können Sie anscheinend keinerlei Leerzeichen hinter dem ?> in einer Ihrer PHP-Dateien haben, da dies die XML-Rückgabe unbrauchbar machen könnte. -- Jared
Das betrifft alle Arten von PHP-Anwendungen, die etwas Anderes als HTML (z. B. GIF, PDF usw.) erzeugen. Zusätzliche Zeichen außerhalb der PHP-Tags sind besonders schlechter Stil bei per include oder require eingefügten Dateien. Eine typische Konsequenz für HTML-Anwendung ist es, dass diese nicht mehr in der Lage sind, Header zu versenden (inklusive Cookies). Beachten Sie zudem Ihre error_reporting- und display_errors-Einstellungen. -- David Brown 2006-01-21
Wenn man das letzte "?>" in seinen PHP-Dateien weglässt, wird der PHP-Parser automatisch einen gedachten schließenden Tag hinter dem letzten Zeichen einfügen. Ich habe diesen kleinen Tipp vor Jahren gelernt, und seitdem bekomme ich kaum mehr eine dieser nervenden "Can't send header"-Fehlermeldungen. Das ist eine große, große Hilfe bei Bildererstellungs-Scripts, Include-Dateien usw. gewesen. - ajax.
Wenn Sie unbedingt an Ihrem geschätzten "?>"-Tag festhalten wollen, setzen Sie einfach Ihre include/require-Befehle in einen Rahmen aus ob_start()- und ob_end_clean()-Funktionen. Es ist außerdem interessant zu bemerken, dass include/require wesentlich schneller ausgeführt wird als include_once/require_once, was die Laufzeit eines Scripts verringern kann, wenn Sie viele dieser Anweisungen verwenden.