Autor Zpráva
Misha
Profil *
Zdravím, na webu www.vinostyl.cz jsem provedl překódování z windows-1250 na formát utf-8. Na začátku stránky se mi ovšem začal zobrazovat jakoby prázdný řádek.
Funkčně jsem zjistil, že se pravděpodobně odesílá nějaký znak ještě před odesláním hlavičky stránky (nefunguje přesměrování v header), jenže ve zdrojovém kódu žádný znak není vidět.
Při hledání na webech jsem našel, že znak do souborů se může vkládat pokud je použit BOM, ale ten by byl přece viditelný, nebo ne?
Pokud by se jednalo o BOM, nevíte o způsobu jak ho hromadně odstranit ze všech souborů webu?
juriad
Profil
Je to BOM a je jich tam hromada. Jde o sekvenci "EF BB BF".
0000000  ef  bb  bf  ef  bb  bf  ef  bb  bf  ef  bb  bf  ef  bb  bf  ef
          o   ;   ?   o   ;   ?   o   ;   ?   o   ;   ?   o   ;   ?   o
0000020  bb  bf  ef  bb  bf  ef  bb  bf  ef  bb  bf  ef  bb  bf  ef  bb
          ;   ?   o   ;   ?   o   ;   ?   o   ;   ?   o   ;   ?   o   ;
0000040  bf  3c  3f  78  6d  6c  20  76  65  72  73  69  6f  6e  3d  22
          ?   <   ?   x   m   l  sp   v   e   r   s   i   o   n   =   "
0000060  31  2e  30  22  20  65  6e  63  6f  64  69  6e  67  3d  22  75
          1   .   0   "  sp   e   n   c   o   d   i   n   g   =   "   u
0000100  74  66  2d  38  22  3f  3e  0a  3c  21  44  4f  43  54  59  50
          t   f   -   8   "   ?   >  nl   <   !   D   O   C   T   Y   P

Nejčastější potíže s PHP (FAQ) » Divný znak (čtvereček) na začátku includovaného souboru v UTF-8
Misha
Profil *
Tak super, alespoň vím kde je problém a teď řešení... Je nějaký způsob jak odstranit BOM hromadně u všech souborů ve složce? Pokud bych musel ručně přeukládat soubor po souboru, tak to mám tak na týden.
juriad
Profil
Jaký používáš editor pro psaní a úpravu PHP? Ve většině to lze nastavit.
Nebo použij nějaký prográmek, na internetu se jich povaluje několik. Hledej něco jako "remove bom windows directory". Nemám s nimi však zkušenost. Před úpravou si vše zazálohuj.

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: