php调用webservice 乱码怎么办

  • 来源:网络
  • 更新日期:2020-09-11

摘要:php调用webservice乱码的解决办法:首先打开“nusoap.php”文件;然后修改内容为“var $soap_defencoding = 'UTF-8';”;最后在调用时指定编码即可。推荐:《PHP视频教程》

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;