UTF-8ベースPHPのBOMエラー

phpをUTF-8で書くときに、BOMを含めるとイクナイ。

Warning: Cannot modify header information – headers already…

なエラーが出現。

これは
「header関数の前に何かの文字列あるからだめーっ」
っていってるようなんだけど、そんな文字列どこにもない。

<?php header(“Content-Type:text/html; charset=UTF-8″); ?>

だもん。
ぴったり無駄なく書いてるはずなのに、
エラー。
どないやねん。
だれやねん。

その正体はBOM(Byte Order Mark)という
UTFのLittle EndianかBig Endianかを区別するためのビッド列だった。
目にはみえないようにこっそりと入ってるらしい。

というわけで、phpをUTF-8で書くときの保存はBOM抜きでお願いします。

コメントを残してみる

コメント