NuSOAP で日本語が文字化け
どうでもいいけど、
「もじばけ」
を
「ぼじばけ」
って間違って入力したら、
「簿磁場家」
って変換された。むしろこの方が文字化けっぽい(笑)
さて。
SOAP通信を行うPHPのライブラリのNuSOAPですが、
なにやら2バイト文字で化ける。
(というのは、LyricWikiに登録されてる歌詞で、なぜか「 ' 」を2バイト文字の「’」で
記載されている歌詞があって、それが ? になっちゃうんだよね)
というわけで、解決策。
まぁ世の中のみなさんが色々いってますので、大体はその通りですが、
ちょっとバージョンが古かったもので。
バージョン 1.94 のNuSOAPです。
1.
134行目付近
を
に。
2.
6200行目付近。
をコメントアウト。
解決。
つか通信時に自動的にデコードしちゃうのってどうなの?
普通通信は生でしてデコードは自分のスクリプト内で、ってカンジじゃないのかな?
まぁいっか!
「もじばけ」
を
「ぼじばけ」
って間違って入力したら、
「簿磁場家」
って変換された。むしろこの方が文字化けっぽい(笑)
さて。
SOAP通信を行うPHPのライブラリのNuSOAPですが、
なにやら2バイト文字で化ける。
(というのは、LyricWikiに登録されてる歌詞で、なぜか「 ' 」を2バイト文字の「’」で
記載されている歌詞があって、それが ? になっちゃうんだよね)
というわけで、解決策。
まぁ世の中のみなさんが色々いってますので、大体はその通りですが、
ちょっとバージョンが古かったもので。
バージョン 1.94 のNuSOAPです。
1.
134行目付近
var $soap_defencoding = 'ISO-8859-1';
を
var $soap_defencoding = 'UTF-8';
に。
2.
6200行目付近。
if($this->decode_utf8){
$data = utf8_decode($data);
}
をコメントアウト。
/*
if($this->decode_utf8){
$data = utf8_decode($data);
}
*/
解決。
つか通信時に自動的にデコードしちゃうのってどうなの?
普通通信は生でしてデコードは自分のスクリプト内で、ってカンジじゃないのかな?
まぁいっか!






