PHPのスクリプトファイル文字コードをSJISで記述して、運用しても文字化けやその他なにか問題はないでしょうか?EUCで記述する場合と比較して、メリット/デメリットはありますか?


また、SJISで記述する場合のphp.iniの設定内容を教えて下さい。
よろしくお願いします。

環境 PHP4.3.7 OS:MiracleLinux2.1

回答の条件
  • URL必須
  • 1人2回まで
  • 登録:2004/06/19 21:34:00
  • 終了:--

回答(5件)

id:iloveny No.1

iloveny回答回数77ベストアンサー獲得回数02004/06/19 21:51:59

ポイント20pt

SHIFT-JIS の場合、正規表現が非常に使いづらくなります。正規表現は、ウェブプログラミングではよく使うので、これが無いと結構痛いです。

EUC-JP の場合、その心配はありません。

EUC-JP は最初のうちは使いづらいと感じるかも知れませんが、慣れれば SHIFT-JIS と変わりなく使うことができるので、EUC-JP をお勧めします。

出力時に SHIFT-JIS で出力すれば、ブラウザが誤認識することもありません。

URLはPerlのことですが、PHPの正規表現はPerl互換なので同じと考えていいでしょう。

id:loy

正規表現ですか。使えないと確かに痛いですね。

2004/06/19 22:16:11
id:onitsukaouendan No.2

onitsukaouendan回答回数35ベストアンサー獲得回数02004/06/19 21:58:47

ポイント20pt

海外の方がみれないくらいではないでしょうか。

すべて S-JISに変換してUPすれば

良いとおもいます。

掲示板等の変換の文字エンコードのとこもS-JISに変えれば問題ないでしょう。

セキュリティホールが見つかって

バージョンアップしたときに

また 同じ作業しなくてはいけない

面倒がありますね。

自分で記述を付け加えていけばいけくほど

その場所忘れていくものですから

どこかにメモしておくと

いつ バージョンアップしても大丈夫です。

id:iloveny No.3

iloveny回答回数77ベストアンサー獲得回数02004/06/19 23:02:23

ポイント20pt

http://oku.edu.mie-u.ac.jp/~okumura/php/

PHP による Web プログラミング

追加です。

長らく SHIFT-JIS で書いていなかったので忘れていましたが、下記のプログラムを SHIFT-JIS で書いてみてください。

 print ”表”;

エラーが出ると思います。これは表という字の2バイト目に ¥(バックスラッシュ) が含まれているため、PHP が ” を ¥” と認識してしまい、Parse error となります。

追伸.携帯絵文字変換の際はポイントをいっぱい送っていただきありがとうございました。

id:loy

携帯絵文字変換については、スクリプトの文字コードをSJISにしたら変換できました。しかし、EUCにするとできません。設定方法を教えていただけないでしょうか。

2004/06/19 23:38:41
id:Paradise No.4

Paradise回答回数89ベストアンサー獲得回数02004/06/19 23:33:31

ポイント20pt

EUC-JP で困るとしたら,,、

1. Editorの設定ですかね。Winでexploreからクリック一クリックで開くときにめんどくさいですね。 送るとしても、EditorがデフォルトでEUCでないと日本語文字はばけばけです。逆にEUCに固定すると、あまたのソースがばけばけになります。

2.MiracleLinux2.1だとDBはOracleと決め打ちしますが、大丈夫ですね。これが、PostgreSQLになると、、、EUCですから、簡単につくるにはソースもEUCが望ましく、SJISならば、いちいち mb_encodeとか絡ませます。(もっとも1行追加くらいだが、、、)

3.html記述で

 <META HTTP-EQUIV=”Content-Type” CONTENT=”text/html; charset=EUC-JP”>

を入れておけば大体大丈夫ですがですが、charsetきちんとしてないサイトが多いので簡単に文字化けが出ます。

 で、SJISだと、漢字コード2バイト中に¥を含む場合の文字化け問題があったりします。はてなのソース見るとEUC-JPですね。

id:loy

はい、お察しの通りoracleを使っています。DBにかんしては問題ないです。

2004/06/19 23:39:53

質問者が未読の回答一覧

 回答者回答受取ベストアンサー回答時間
1 banzo 36 28 0 2004-06-21 12:43:20

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません