フリーPHPスクリプト配布サイト。
文字コードとは、コンピュータで文字を利用するために各文字に割り当てられたコード番号のことです。例えば A
は文字コード 41
、B
は文字コード 42
、のように決められています。
現在インターネットでは、UTF-8
・JIS
・Shift-JIS
・EUC-JP
といった文字コードがよく利用されていますが、文字コードによって日本語に割り当てられているコード番号が異なります。
例えば あ
の文字コードは
UTF-8
では E38182
JIS
では 2422
Shift-JIS
では 82A0
EUC-JP
では A4A2
と、異なる文字コードが割り当てられています。ですので何も考えずに文字コードを混在させると、ソフトが文字コードを判別できずに文字化けすることがあります。
現在は色々な文字コードが利用されていますが、徐々に UTF-8
が使われる割合が増えています。UTF-8
は Unicode
という文字コードの一つです。Unicode
は、世界中で使われているすべての文字を、共通の文字コードで利用できるようにするための規格です。
特にこだわりが無ければ、文字コードは UTF-8
にしておくといいでしょう。以降の解説でも、文字コード UTF-8
でファイルを作成していきます。
なお、Shift-JIS
でPHPプログラムを作成するのは
5C
を含む文字を正しく表示できないShift-JIS
の利用を宣言すると、セキュリティホールが発生することがあるという問題があるのでお勧めできません。
UTF-8
のファイルには、先頭にBOM(Byte Order Mark)と呼ばれる、文字コードを識別するためのデータが付与されることがあります。これはファイルの文字コードが UTF-8
だと明確に宣言するための情報なのですが、HTMLファイルやPHPファイルを作成する際、BOMが付いているとゴミデータとみなされてしまいます。それによって、余計な記号が表示されたりエラーになったりします。
ですので、HTMLファイルやPHPファイルを作成する際はBOM無しの UTF-8
にする必要があります。なお、BOM無しの UTF-8
は UTF-8N
と表記されることがあります。
Windowsに付属しているメモ帳では、BOM無しの UTF-8
でファイルを保存することができません。EmEditorなど高機能なテキストエディタならBOM無しの UTF-8
でファイルを保存することができますので、これらを利用しましょう。
EmEditorでは、ファイルを保存する際に文字コードを指定することができます。まずはメニューから『ファイル(F)』→『名前を付けて保存(A)』を選択します。
ファイルを保存する画面が表示されるので、保存する場所とファイル名に加えて『エンコード(E)』を指定します。(クリックすると拡大表示されます。)
以下のように『エンコード(E)』は『UTF-8』に設定し、さらに『Unicodeサイン(BOM)を付ける(G)』にチェックは外しておきます。これで『保存(S)』ボタンを押すと、BOM無しの UTF-8
でファイルを保存することができます。(クリックすると拡大表示されます。)
他のエディタでもBOM無しの UTF-8
に対応していれば、ファイルを保存する際に『UTF-8(BOM無し)』や『UTF-8N』を選択できます。