Re: Detecting a BOM
| From: | Daniel Egeberg | Date: | Wed, 13 Jan 2010 18:49:07 +0000 |
| Subject: | Re: Detecting a BOM | ||
| References: | 1 | Groups: | php.general |
| Request: | Send a blank email to php-general+get-301072@lists.php.net to get a copy of this message | ||
On Wed, Jan 13, 2010 at 11:42, Leszek Stachowski <shazarre@gmail.com> wrote:
> Hi,
>
> is there any way to detect BOM in a file? I'm writing a parser which outputs
> a number line if there's an error in it and its content. Every time it
> parser a file saved in UTF-8 with BOM it outputs those three magic letters.
> Can I pre-check for it and skip it? Or convert somehow?
>
> Greetings,
> Leszek Stachowski
The UTF-8 byte order mark is represented by the hexadecimal character
sequence EF BB BF. You can use something like this to detect a BOM:
if (substr($source, 0, 3) == pack('CCC', 0xEF, 0xBB, 0xBF)) {
// has bom
}
--
Daniel Egeberg