php呼叫webservice亂碼的解決方法:先開啟「nusoap.php」檔案;然後修改內容為「var $soap_defencoding = 'UTF-8';」;最後在呼叫時指定編碼即可。
推薦:《PHP影片教學》
webservice中有中文的話,回傳的值就變成了亂碼.查看了一下response的結果,是正確的.應該是用nusoap處理的時候出現了問題.
更改了nusoap.php兩個地方就OK了.
更改的地方:
86行的:var $soap_defencoding = 'UTF-8'; 4998行的:var $decode_utf8 = false;
不更改也可以,不過在呼叫的時候就必須指定編碼.
1.伺服器端介面
$server=new soap_server(); //生成对象 $server->soap_defencoding = 'utf-8'; $server->decode_utf8 = false;
2.呼叫用介面
$client = new soapclient('http://localhost/TestService/Service1.asmx?WSDL', true); $client->soap_defencoding = 'UTF-8'; $client->decode_utf8 = false;
以上是php呼叫webservice 亂碼怎麼辦的詳細內容。更多資訊請關注PHP中文網其他相關文章!