Snad každému programátorovi, který kdy dělal v
PHP, se stalo, že program nemohl nastavit
HTTP hlavičky, protože už na výstup bylo něco zapsáno. V drtivé většině případů je tam zapsán nějaký bílý znak, který se omylem zatoulá za konečnou sekvencí
?>. Snadná pomoc, vůbec neuvádějte závěrečnou sekvenci, protože je zcela nepovinná. Pokud se jedná o soubory, které obsahují čistý kód (při použití Smarty nebo jiného šablonovacího systému to jsou všechny soubory typu
PHP), tak na poslední řádek dávejte něco jiného.
Následující příkaz vyhledá všechny
PHP soubory, které nemají na posledním řádku
// EOF nebo
//EOF:
find . -type f -name '*php' | while read f ;do tail -1 "$f" | grep -vsqE '// ?EOF' && echo "$f" ;done
A následující příkaz vyhledá
PHP soubory, které začínají jinak než
: find . -type f -name '*php' | xargs grep -n ' | grep ':1:' | grep -v ' | sed 's/:1: