Warning: Cannot modify header information - headers already sent by (output started at /srv/users/serverpilot/apps/wordpress/public/wp-content/plugins/kwcq.php/kwcq.php:76) in /srv/users/serverpilot/apps/wordpress/public/wp-content/plugins/nhii.php/nhii.php on line 75

Warning: Cannot modify header information - headers already sent by (output started at /srv/users/serverpilot/apps/wordpress/public/wp-content/plugins/kwcq.php/kwcq.php:76) in /srv/users/serverpilot/apps/wordpress/public/wp-content/plugins/xrvq.php/xrvq.php on line 75
Ett litet, men naggande gott, fel i PHP - Jonathan Sulo

Ett litet, men naggande gott, fel i PHP

Sprang på ett lagom irriterande fel i ett WordPress-tillägg under helgen som gick. Med felmeddelandet ”Cannot modify header information – headers already sent” som enligt bl a WordPress Codex, FAQ Troubleshooting betyder att det finns tecken före/efter php-taggarna.

Öppnade den berörda filen med ett flertal olika textredigerare, men lyckades inte hitta dessa tecken. Körde till slut följande kommando i en terminal:

less filnamn.php

Och såg då att filen inleddes med ”<U+FEFF>”. Vilket innebar att filen teckenkodades med UTF-8 BOM istället för enbart UTF-8. Försökte lösa det genom att skapa en ny fil, med samma innehåll, men felet kvarstod. Googlade då lite och hittade denna lösning (via en terminal):

sed -i '1s/^\xEF\xBB\xBF//' filnamn.php

Laddade upp filen, laddade om WordPress och vips så var felet borta.