我花了最后一周开发代码,使用nuSoap库连接到Web服务。我刚刚将代码部署到生产中,但立即开始收到我之前从未见过的错误。我将问题追溯到试图实例化新的soapclient对象的一行代码。事实证明,两个库都有一个名为'soapclient'的类,而在生产中创建的类来自本机Soap库,而不是我所包含的nuSoap库。如何禁用原生Soap功能并严格遵守nuSoap?
答案 0 :(得分:2)
随着PHP5的发布,php_soap扩展中包含一个soapclient
类。 NuSOAP已将其类重命名为nusoap_client
。如果您的NuSOAP副本是最新的,您应该可以使用它。这不会禁用php_soap扩展,但应该允许您使用NuSOAP类而不会产生进一步的冲突。
答案 1 :(得分:2)
参考:http://code.google.com/p/nusoap-for-php5/issues/detail?id=2
答案 2 :(得分:0)
我不怪你,PHP的内置肥皂库是完整的,完全尴尬,特别是与python web服务相比时。
一种选择是在编译时删除扩展名:
此扩展仅适用于 PHP配置了--enable-soap。
另一种选择是在nuSoap中重命名soap-client。 Notepad ++的搜索和替换效果很好,但你真的不应该这样做。