微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

php – 使用NuSOAP检索结果时出现XML错误(无效字符)

我正在使用NuSOAP与第三方API进行交互,包括运行数据库查询和检索结果.它运行得非常可靠,但我遇到了一个特定查询的问题. NuSOAP没有返回结果,而是生成一个错误:在第2行解析SOAP有效负载XML错误:无效的字符

事实证明,结果集包含以下内容:LéaLincoln.当我手动将重音字符更改为“常规”字符时,查询工作正常,没有来自NuSOAP的错误.

所以,我的问题是如何处理这个问题.我无法控制来自数据库的数据,我需要NuSOAP不要抛出错误并在每次出现非标准字符时停止.谢谢. –Jeff

解决方法:

搜索和测试之后,似乎CAZypedia工作人员的黑客是解决方案:

function nusoap_parser($xml,$encoding='UTF-8',$method='',$decode_utf8=true){
    parent::nusoap_base();

    // Hack by CAZypedia crew to fix character encoding of NCBI XML data from SOAP
    // This prevents non-English characters from causing the parser to choke.
    $xml = iconv("ISO-8859-1", "UTF-8//TRANSLIT", $xml);
    // End hack.
    $this->xml = $xml;
    $this->xml_encoding = $encoding;
    $this->method = $method;
    $this->decode_utf8 = $decode_utf8;

链接http://sourceforge.net/projects/nusoap/forums/forum/193579/topic/3718945

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。