开发者

UTF8 Errors in PHP Zend SOAP

I am programming a "SOAP Proxy" th开发者_Python百科at connects to a SOAP Server (Main Server) and is a SOAP Server itself. I am programing one Client too that will contact with this SOAP Proxy.

When the SOAP Client call a specific metodh from the SOAP Proxy I receive this error:

SOAP-ERROR: Encoding: string 'Pir\xe4...' is not a valid utf-8 string 

I do not know in what language the Main Server is implemented. I am working with PHP in the Proxy Server and in the Client. The information comes from the Main Server and is a complex object.

I found a workaround to the problem. Adding this line before return the content in the Proxy Server eveithyng is ok:

$result = json_decode(utf8_encode(json_encode($result)));

But, i think this is quinte ninja function to do. There are a better way? Anyone found this kind of problem in the past? Or is something missing in my ideia?


I would say, it is ok to encode the return ? But more sexy is it to use the Zend Framework methods to encode it:

// could be set in bootstrap
Zend_Json::$useBuiltinEncoderDecoder = true;

// should be correct utf8
$result = Zend_Json::encode($result);
0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜