- 締切済み
php で外字を扱う
以下の環境で、システムを開発しています。 OS = Windows2000 SP4 Apache = 2.0.58 PHP = PHP 5.1.6 magic_quotes_gpc = Off mbstring.language = Japanese mbstring.internal_encoding = SJIS mbstring.http_input = auto mbstring.http_output = SJIS mbstring.encoding_translation = On mbstring.detect_order = auto mbstring.substitute_character = none; このような設定で、コードはSJISで書いています。 外字エディタで外字が登録してあります。 この外字をフォームから、POSTで受取たいと思っていますが、 外字の部分だけが、文字化けしてしまい、どうしたものかと思案中です。 何か、良い考えはないでしょうか? ただ、システムの大部分はこの設定で出来上がっているため 大まかな設定の変更はおそらく無理だろうと思います。 すいませんが、何か思いあたる方は返答お願いします。
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- みずの(@mizuno3)
- ベストアンサー率73% (192/263)
回答No.1
あまりエレガントじゃなさそうですが、 php://inputからクエリデータを受け取ると、デコード前の純粋なデータが取得できるかと思います。 $_s = file_get_contents("php://input"); $_data = urldecode($_s); こんなので取得できるんじゃないかと思います。
お礼
回答ありがとうございます。 実は、別の方法で解決していました。 フォームに enctype="multipart/form-data" をつけることで、送信データが添付ファイルとして送られ、 デコードせずに受け取ることができました。