初めての店舗開業を成功させよう>>

phpでの文字コードについて、どうするか迷っています。
perlの時はutf8に統一しましたが、phpの場合、ソースはeuc-jpにして、html出力もeuc-jpにする例が多いのですが、私としては、ソースはutf8にしてhtml出力もutf8にしようと考えています。
理由は、半角カナやIBM拡張文字などはeuc-jpでは使えないためです。

みなさんにお聞きしますが、utf8ベースで開発した場合、文字列操作や正規表現やDB関係などで困るような具体的な例が知りたいです。

よろしくお願いいたします。

このQ&Aに関連する最新のQ&A

A 回答 (3件)

UTF-8でまず問題ないと思いますけど。


最近はUTF-8のコードが増えてきています(LinuxがUTF化しているため)。
従来はサーバがEUCだったため、UTFを扱いにくかった(エディタも)と言う事だと思いますが。

過去にさかのぼって変えようとまでは思っていませんが、新しく作る物は出来るだけUTF-8で書いてますけど、特に問題は無いですね。気になったのはpreg_matchの時のオプションu(ユニコードを使う)くらいですか。常に意識さえしていれば問題が起こった時の対処も楽です。
メール送信時に文字化け、と言う事が一番おこりそうな事ですが、これはどの文字コードの時でも問題が起こる可能性ははらんでいますから、あえて、と言うほどじゃないですね。あと、当然ですが、携帯対策。これはSJISですよね。入出力をSJIS変換すればこれも問題ありません。
    • good
    • 0

自分はutf8で特に問題はありません。


以前にBOMでちょっと困ったことはありましたが、
それさえ気をつければ問題はないと思います。
携帯サイト作成の場合はMySQL[utf8]とPHP[SJIS]でしています。
    • good
    • 0

あくまで参考意見ですが。



PHPの場合、EUC-JPがいいといわれていますが…。
理由は忘れましたが、自分はSJISを使っています。
とくに利点はないと思いますが。
ただ、MySQLはEUC-JPですので
データベースを利用するときは
mb_convert_encodingですべてエンコードをかえていますので。
それ以外はとくに問題は発生していません。

正規表現などはPHP中で
mb_regex_encoding("SJIS"); //SJISの場合
と明示的にエンコードを指定するとうまくいきます。

ちょっとずれた回答かもしれませんが…。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


このカテゴリの人気Q&Aランキング