Problém s validací UTF a PHP include = BOM
Před časem jsem dokončil jeden web. Rád dělám weby validní, i když to není nezbytné. A tady mě zlobily relativně nesmyslné hlášky validátoru. Tu se mu nelíbil i jeden naprosto v pořádku meta tag, tu doctype. Přemýšlel jsem, přemýšlel a nic mě nenapadlo. Takže nedalo se nic dělat, musel jsem se zeptat chytřejších. A to pomohlo.
Zjistil jsem, že tam mám BOM, tedy byte order mark, česky jednobytový znak, který není vidět ale je tam. Článek který to pomáhá vyřešit jsem našel na blogu Lukáše Mačí. Díky za pomoc nightfishovi a Plaváčkovi.
Tenhle příspěvek je spíš upozornění pro další, co narazí na podobný problém.
PS: Díky Linet 🙂
Až v PS???? 😀 😀
Už jsem se chtěla vztekat že moji obětavou pomoc jsi neocenil! ;o)
Linet to PS taky znamená Pretty Sexy:-) A Tvá pomoc je neocenitelná, ber to jako třešnička na dortu, až nakonec:-)
BOM znamena znacka poradi bajtu, a je kupodivu dvoubajtova.
A je videt, jenom prohlizece, ktere umeji detekovat UTF8, ji interpretuji.
Ale jinak znama vec, PHP nema poradnou podporu UTF8 a ceka se s ni do 6.0.
BOM je 2-4 bajtova znacka na zacatku souboru ktera rika ze je unicode. utf-8 razeni bajtu nema a vkladani bom do utf-8 je tedy zbytecny. pro utf-16/32 je to nezbytny…