ウェブコーディング

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

ブログ向けWordPressテーマ

WordPressテーマ「MAG(TCD036)」

スポンサードリンク

関連記事

  1. ウェブコーディング

    NetBeansでSQliteのドライバーを有効にするプラグイン

    PHPなどのwebアプリケーションを作成できるNetBeansですが、…

  2. ウェブコーディング

    PHPで配列と文字列の変換をデータベースに応用する方法

    データベース検索などを利用するときに、$_POSTや$_GETで受け取…

  3. ウェブコーディング

    意外と重要なCSSのidとclassを使い分け

    WordPressテーマを作ったり、ホームページを作ったりするとき、間…

  4. ウェブコーディング

    CSSのfloatを使ってリキッドレイアウトを組んでみた

    先日ふと思い立って、一からWEBサイトをデザインし始めることにしたので…

  5. ウェブコーディング

    WEB言語を手を動かして1から学べるサイト

    HTML・CSS・PHPなどのウェブ系の言語をどれくらい理解しているで…

  6. ウェブコーディング

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

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

コメント

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

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

CAPTCHA


スポンサードリンク

カテゴリー

ピックアップ記事

WordPressテーマ「MAG(TCD036)」     ロゴマルシェ - LogoMarche   ボタンマルシェ - ButtonMarche
  1. ブログの収益化

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

    自作?外注?その前にコレ!ブログのロゴデザインをするなら「Logaster」を使…
  3. 便利なツールの話

    フォトレタッチ・グラフィックデザインの無料ソフト「GIMP」(≒Photosho…
  4. 便利なツールの話

    レイアウトデザインに最適な無料ソフト「inkscape」(≒Illustrato…
  5. ブログやサイトの作り方

    月額100円から使える「ロリポップレンタルサーバー」
PAGE TOP