MySQL4.0.24+PHP4.3.11(Linux環境)で、日本語(EUC)と中国語(BIG5)の混在したデータベースを制作しています。
具体的には、中国の施設の固有名称を
中国語、日本語、英語表記で管理画面から登録します。管理画面は3言語が同時に表示される様にUnicodeでページを作成。MySQLへもUnicodeのまま保存しています。
MySQL上では、どの言語も文字化けせず表示されています。
MySQLからデータを参照し表示するページでは、日本語ページでは日英語のみ、中国語ページでは中英のみの表示であり、他にも理由があって、取り出したデータをmb_convert_encodingでEUC-JPやBIG-5へ変換して表示したいと思っています。
日本語への変換は、EUC-jpへもShift-JISへも問題なく出来、表示がされますが、中国語に関しては日本語と同じ漢字の部分は変換されるのですが、日本語にない漢字の部分が??として表示されてしまいます。
PHPインストール時に
--enable-mbstring=twも追加し、
mbstringの設定を確認しても
Multibyte Support enabled
Japanese support enabled
Traditional chinese support enabled
Multibyte (japanese) regex support enabled
となっています。
他に確認すべき項目などもあるのでしょうけど、マルチバイト対応状況はバージョンが変わるとだいぶ変わっていたりして、検索してもなかなか情報が得られなかったので質問させて頂きました。
No.1ベストアンサー
- 回答日時:
実際のコードを見せて頂ければと思いますが。
私の経験からですと。
マルチバイト文字列関数を使用する前に
日本語だと通常は何もせずにマルチバイト文字列関数を使用できますが、まれに以下のようにコードで
明示的に宣言する必要がありました。
貴殿の場合ですと混在するページとのことなので
japanese部分を書き換えてみてはいかかでしょう?
mbstring.language=Japanese
ご指導ありがとうございました。
間接的に現場から状況を聞いていたので気づかなかったのですが、よくチェックしたら簡体字で入力したものを繁体字(BIG5)に変換していたことが分かりました。
正しい文字を入れ、正常に動きました。
ありがとうございました。
No.2
- 回答日時:
補足です
マニュアルはご覧になられましたか?
http://php.s3.to/man/ref.mbstring.html
参考URL:http://php.s3.to/man/ref.mbstring.html
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- C言語・C++・C# C言語初心者 構造体 課題について 2 2023/03/10 19:48
- Android(アンドロイド) 海外のAndroid 端末の場合、日本語全角は、どう表示されるのでしょうか? 1 2022/10/02 21:16
- Excel(エクセル) Excelヘルプの原文を表示する最速の方法(手順)には? 1 2023/08/11 11:30
- 中国語 新しい中国語入力ソフトを発明しました 22 2023/02/06 07:13
- その他(メールソフト・メールサービス) メールソフトを教えてください 1 2023/03/28 23:32
- その他(動画サービス) 音声認識字幕ちゃんについて 1 2022/12/11 07:55
- PHP PHPで入力フォームでデータを確認表示画面まで送る流れを日本語で理解したいのです。 1 2023/05/29 19:12
- Windows 10 【Windows11】の起動画面で日本語と英語と中国語の言語選択画面を出して起動時の標準 1 2023/06/18 19:40
- 英語 会社で英語を使うことになっての英語の勉強方法 5 2022/07/03 11:49
- 日本語 日本人の大半は英語が難しい言語だと感じるそうですが 8 2023/04/14 18:16
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
友人とのラインで 「~MBと書く...
-
「彡」って文字はなんという文...
-
セル内の文字列が日本語か英語...
-
EBCDIC⇒SJIS変換の方法
-
英数字を含む文字列(0-9,A-Z)...
-
2バイト文字をJEFからSJISに変...
-
COBOLによる全角・半角混...
-
URLのUTF-8からShift-JISへのデ...
-
X86アセンブラで 16進数を10進...
-
VS 2008(VB.NET)
-
Symfowareでのデータ型変換につ...
-
「髙(はしごたか)」を文字コー...
-
Excelマクロにて30分単位の計算...
-
数字5桁文字コード?
-
HP-UXでの文字コード変換方法
-
C#で16進数からASCIIへの変換の...
-
PL/SQLでSJISの文字コードを取...
-
CString ←→ BSTRの変換について
-
相対パスを絶対パスに変換したい
-
%fと%gについて
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
EBCDIC⇒SJIS変換の方法
-
セル内の文字列が日本語か英語...
-
「彡」って文字はなんという文...
-
std::stringからLPCWSTR型への変換
-
VS 2008(VB.NET)
-
ExcelVBA実行後に時々落ちる
-
ふりがなをアルファベット化す...
-
Excelマクロにて30分単位の計算...
-
英数字を含む文字列(0-9,A-Z)...
-
Symfowareでのデータ型変換につ...
-
JIS → S-JIS コード変換するには
-
sedで日本語の置換方法について
-
COBOLによる全角・半角混...
-
フォームのコントロールのバッ...
-
数字5桁文字コード?
-
バイナリデータ→ASCII 変換プ...
-
2バイト文字をJEFからSJISに変...
-
CString ←→ BSTRの変換について
-
VBScript ASC関数:文字エンコ...
-
入力した文字を全て自動で全角...
おすすめ情報