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

使用PHP SoapClient与本地WSDL文件(NON-URI)的任何解决方法?

我有一个应用程序在CLI模式下运行在既不具有也不需要运行本地httpd的服务器上.该应用程序使用SOAP与Web服务提供商进行外发交互.所提供的提供者有一些可用性问题,我们正在通过在其建议的方式在本地托管WSDL文件来减少问题的数量.

看来,SoapClient构造函数(在WSDL模式下)只能使用URI WSDL文件,但是我试图找出一些方法解决这个限制,并以某种方式从本地文件系统读取WSDL文件.我很惊讶,SoapClient构造函数没有选项可以传递一个文件名或一串文本,我可以在之前简单地读取.

有人有人建议如何回避这个限制,做我正在尝试的?

SoapClient()采用的URI不仅支持Web地址,还支持本地文件路径.但是相对路径在这里不起作用,所以它需要是完整的文件路径.

以下是使用相对引用加载本地WSDL文件方法.如果WSDL与当前PHP文件在同一目录中:

new SoapClient(dirname(__FILE__) . DIRECTORY_SEParaTOR . 'the.wsdl.xml');

或者如果它在当前PHP文件的子文件夹中:

new SoapClient(dirname(__FILE__) . DIRECTORY_SEParaTOR. 'subfolder' . DIRECTORY_SEParaTOR . 'the.wsdl.xml');

原文地址:https://www.jb51.cc/php/131003.html

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

相关推荐