[PHP-users 9075] Re: Mac版ネスケの文字コードに関する

Shigeki Mimura php-users@php.gr.jp
Sat, 03 Aug 2002 15:40:35 +0900 (JST)


三村です。

rshimazu> エラーチェックとして
rshimazu> ・入力必須チェック
rshimazu> ・lengthチェック
rshimazu> ・型チェック
rshimazu> などは当たり前として、エンコードのチェックも必要なのですね。
rshimazu> 
rshimazu> そして、エンコードでエラーが発生した場合、エラーメッセージで回避するのではな
rshimazu> く、希望するエンコードにプログラムで変換してあげるのが親切であり、基本なんで
rshimazu> すね。勉強になります。

同じ事に昔はまりました。
PHP3の国際化版がまだ出てなかった頃にIE 3.0が似たような挙動をしてくれてました。
NetscapeNavigatorだと文字化けしないのにIE3.0だと文字化けするんですよ。
で、mb_detect_encodingなんかの便利な関数などなかったので、
iso-2022-jp,SJIS,EUC-JPを判断/変換する関数を書いて対応しました。

rshimazu> はい、それが原因のようです。直前のページのエンコードを引きずっています。もの
rshimazu> すごいバグだと思います。

んー、これはバグなのでしょうかね。
Formをpostする時のencodingは特に規定がないですからね。
常にSJISで送ったりとかしても、大間違いじゃない気がするんですが。

日本語を扱う上で難しいのは複数のコード体系があって、それを常に
意識しなければいけない事だと思います。