ウェブコーディング

PHPなどのプログラムコードをUTF-8で保存するときの注意点

サーバーで実行されるPHPやJavascriptなどをテキストエディタで作成するとき、テキストのエンコードはUTF-8でなければいけないというのは当然です。

ただし、日本語を含めたコードを作成するときは単にUTF-8であればいいかというと、そういうわけではありません。

今回はそんな注意点です。

BOMの有無で日本語が正しく表示されるか決まる

テキストファイルにはそのテキストファイルのエンコードを示すためにファイルの先頭に不可視文字としてバイトオーダーマーク(BOM)が付いていることがあります。

いろいろな歴史があるのですが、通常UTF-8ではこのBOMは付いていないのが普通です。

しかし、日本語入力の可能なほとんどのテキストエディタではUTF-8を選択するとBOMが付いている状態でファイルが保存されます。

このままサーバー環境に移してプログラムを実行すると、日本語が文字化けして読めない現象が起こります。

これを回避するためには、BOMを付けずにUTF-8エンコーディングで保存する必要があります。

 

UTF-8とUTF-8Nの違い

通常UTF-8ではBOMはないと言いましたが、テキストエディタのエンコーディングを見ると、UTF-8とUTF-8Nの2種類あることに気づきます。

特にTerapadなどを利用していれば見かけたことがあると思います。

この場合はUTF-8を選択するとBOM有りでファイルに出力され、UTF-8Nを選択するとBOM無しでファイルに出力されます。

UTF-8は基本的にBOMのない状態が普通なので、もしエンコーディングを確認してUTF-8Nがあれば、そちらを標準設定にしておくと、サーバー環境でつまずくことが少なくなるでしょう。

テキストエディタによっては、「バイト順マークなし」や「BOMなし」と記載されている場合もあります。

自分の使っているテキストエディタの標準設定を確認してみてください。

記事が気に入ったら
tipLog を "いいね!"
Facebookで更新情報をお届け。

tipLog

関連記事

  1. ウェブコーディング

    プラグイン不要!2ステップで完了!「FontAwesome」をWordPressに導入してアイコンを…

    ブログのカスタマイズをするとき、必要なアイコンをいちいち画像化して、フ…

  2. ウェブコーディング

    PHPでデータベースから取得した配列を加工する方法

    データベースからデータをfetch関数などで取得すると、大体は2次元配…

  3. ウェブコーディング

    WordPressのテーマ・テンプレートのディレクトリを取得する方法

    WordPressのカスタマイズをするとき、親テーマと子テーマのどちら…

  4. ウェブコーディング

    AdSenseのモバイル向けページ単位の広告をWordPressに設置する方法

    AdSenseにモバイル用のページ単位の広告という機能が追加されてしば…

  5. ウェブコーディング

    WordPressの子テーマを作るときのひな型テンプレートがあるんですが…

    WordPressのカスタムをするときは子テーマを使った方が効率的で、…

  6. ウェブコーディング

    InstantWPで管理バーが表示されなくなったらどうする?

    InstantWPはローカル環境でWordPressの開発をするときに…

コメント

  1. この記事へのコメントはありません。

  1. この記事へのトラックバックはありません。

CAPTCHA


スポンサードリンク

スポンサードリンク

スポンサードリンク

カテゴリー

ピックアップ記事

   
  1. ブログやサイトの作り方

    TCDテーマ比較「CUBEY」と「BlogPress」どっちがいい?
  2. 特集

    inkscapeの使い方を集めたスキルアップのための日本語チュートリアル集
  3. ブログの収益化

    報酬の受取に苦労してません?初心者でもAmazon・楽天のアフィリエイトで効率的…
  4. ブログやサイトの作り方

    月額100円から使える「ロリポップレンタルサーバー」
  5. グラフィックデザイン

    自作?外注?その前にコレ!ブログのロゴデザインをするなら「Logaster」を使…
PAGE TOP