加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

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

发布时间:2020-12-13 14:05:28 所属栏目:PHP教程 来源:网络整理
导读:我有一个应用程序在CLI模式下运行在既不具有也不需要运行本地httpd的服务器上.该应用程序使用SOAP与Web服务提供商进行外发交互.所提供的提供者有一些可用性问题,我们正在通过在其建议的方式在本地托管WSDL文件来减少问题的数量. 看来,SoapClient构造函数(在W
我有一个应用程序在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');

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读