Witam!
(Jeżeli powinienem dopisać ten post gdzieś indziej, to przepraszam i proszę o przeniesienie go w stosowne miejsce).
Ostatnio podczas pracy z Pajączkiem napotkałem problem następującej natury:
Po utworzeniu pliku PHP kodowanego w UTF-8 i wysłaniu go na serwer zobaczyłem, że przed wyświetlaną treścią strony pojawił się niepokojący odstęp. Sprawdzenie kodu strony pod Linuxem umożliwiło znalezienie znaków, które nie są wyświetlane przez edytory w systemie Windows. Są to trzy bajty, znane jako BOM (Byte Order Mark), wskazujące na początek pliku UTF.
Zapisywanie przez Pajączka tych bajtów w plikach PHP ma konsekwencje dwojakiego rodzaju:
- w przeglądarce pojawiają się niepotrzebne znaki, które (zwykle) odsuwają stronę od górnej krawędzi okna
- niektóre pliki PHP wysyłają do przeglądarki nagłówki (np. kodowanie strony, stawianie ciasteczek), które muszą do niej dotrzeć przed główną treścią strony. Występowanie BOM-u na początku dokumentu uniemożliwia zatem wysłanie nagłówków i powoduje błędy.
Co radzicie w takiej sytuacji i jakie jest oficjalne stanowisko w tej sprawie?
-----------------------------
Do poniższej notki: dziękuję za odpowiedź. Działa!
