[PHP] UTF-8のBOMを削除

BOM (Byte Order Mark)付きのUTF-8のファイルは、
EF BB BF の3バイトを画面に出力することになり、 header() が効かなくなる。
ブラウザによっては、レイアウトが崩れる場合もある。
UTF-8からSJIS-winへ変換する際に注意すること。

ファイルの先頭 3バイトに EF BB BF がある場合、これを判別して削除

function deleteBom($str)
{
    if (ord($str{0}) == 0xef && ord($str{1}) == 0xbb && ord($str{2}) == 0xbf) {
        $str = substr($str, 3);
    }
    return $str;
}
こちらもあわせてどうぞ
  1. [PHP] 日付・時刻用の関数
  2. [PHP] 資料請求用の関数
HatenaGoogle BookmarksYahoo BookmarksFacebook

コメントする

*