
こんにちは、初めて質問させていただきます。
PHPでテキストファイルに保存されたEUC-JPの文字列情報を
UTF-8で表示しようとしています。
第一水準、第二水準程度の日本語は問題なく変換ができてるのですが、
「(7)」や「VII」などの特殊な記号文字が変換できないようです。
これは mb_convert_encoding の仕様なのでしょうか?
ご存知でしたらご教授お願いいたします。
【ソース】
$buffer = "マル4→(4) ギリシャ4→IV 郵便番号→〒 株式会社→(株) \n";
echo mb_convert_encoding($buffer, "utf-8", "euc-jp");
【出力結果】
マル4→? ギリシャ4→? 郵便番号→〒 株式会社→?
【環境情報】
Linux
(OS、バージョン詳しくは分かりません。)
PHP Version 4.3.9
mbstring.detect_order no value
mbstring.encoding_translation Off
mbstring.func_overload 0
mbstring.http_input pass
mbstring.http_output pass
mbstring.internal_encoding EUC-JP
mbstring.language Japanese
mbstring.script_encoding no value
mbstring.substitute_character no value
(Local Value、Master Value 共に同値です。)
No.2ベストアンサー
- 回答日時:
こんにちは。
> "マル4→(4) ギリシャ4→IV 郵便番号→〒 株式会社→(株)
これらは機種依存文字ですので、使えないのではないかと思います。
PHPユーザーメーリングリストの過去検索を貼り付けておきますので、参考にしてみてください。
ちなみに、下記URLの過去検索をすると、機種依存文字があるかどうかをチェックして、はじく or 変換する、というコトはされてるみたい。
それでは。
参考URL:http://ns1.php.gr.jp/mailman/namazu.cgi?idxname= …
この回答への補足
$buffer = "マル4→(4) ギリシャ4→IV 郵便番号→〒 株式会社→(株) \n";
echo mb_convert_encoding($buffer, "utf-8", "eucJP-win, euc-jp");
という形にすることである程度の文字変換に対応できました。
ギリシャ4の小文字→iv には対応できませんでしたが、このようなイレギュラー文字は「教えて!goo」のように代替え文字を利用しようと思います。
No.1
- 回答日時:
それって、機種依存文字だからでは?
このサイトも、ギリシャ数字を入力すると
ギリシャ数字4 の場合は IV(アイ ブイ)に
○4 を は (4) に
強制的に変換されますよね
それと同じ事しなくちゃなりません
mb_convert_encoding()
では対応できないはず
機種依存文字のことは存じています。
Macintosh で表示できないのは納得できるのですが、
Windows で表示できなかったのがどうも納得できなかったのです。
変換をしている Linux では ○4 が扱えないのですね。
>> ○4 → (4)
この方法は最終手段として考えておきます。
ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
文字化け変換方法
-
phpフォームで携帯へメール送信...
-
送信したメールのタイトルが無...
-
postの文字化け防止について
-
PHPでの文字列置換について
-
VBAのコマンドボタンの文字列の...
-
C++で空Enterの入力を判...
-
文字の入力で横バー上段、中断...
-
VBAでCSVをExcelに取り込む時に...
-
jsp 改行コードで改行させて表...
-
エディットボックスで改行
-
メッセージボックスで1025文字...
-
Excel関数「COUNTIF」で”文字”...
-
コンボボックスの項目中に改行を
-
エクセルのCOUNTIFが正しくカウ...
-
vbsで2文字以上の空白を改行に...
-
記号は半角と全角どちらがよい...
-
ソースコードの1行が長いとき...
-
C言語の標準入力で改行しない方法
-
改行について
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
文字化け変換方法
-
PHPmailerでの添付ファイルの文...
-
PHP cURLでPOSTした値が文字化...
-
SQL Serverで文字コードUTF-8
-
日本語(マルチバイト)でのwor...
-
imodeメールのSubject部分の文...
-
「テキストテキスト」という文...
-
mb_eregについて
-
SJISからUTFに変換して...
-
SJISで取得した半角カナをUTF-8...
-
PostgreSQLからCSV形式でエクス...
-
PHPの文字化けについて教え...
-
PHPでのメール差出人名について
-
【PHP】日本語を実体参照符号化...
-
Shift-JISからUTF-8への変換が...
-
phpフォームで携帯へメール送信...
-
txtファイル作成の際に文字コー...
-
vodafoneが言う事ききません
-
文字コードを変換したURLを作成...
-
PHP + SQLite 文字化けについて
おすすめ情報