PHP SoapServer:设置端口地址位置

PHP SoapServer:设置端口地址位置,php,wsdl,soapserver,Php,Wsdl,Soapserver,我使用PHP的内置SoapServer类来实现Web服务。我需要在以下WSDL代码段中设置location属性: <wsdl:service name="serviceName"> <wsdl:port name="serviceNameSoap" binding="tns:serviceNameSoap"> <soap:address location="MY_URL_HERE" /> </wsdl:port> <wsd

我使用PHP的内置SoapServer类来实现Web服务。我需要在以下WSDL代码段中设置location属性:

<wsdl:service name="serviceName">
  <wsdl:port name="serviceNameSoap" binding="tns:serviceNameSoap">
    <soap:address location="MY_URL_HERE" />
  </wsdl:port>
  <wsdl:port name="serviceNameSoap12" binding="tns:serviceNameSoap12">
    <soap12:address location="MY_URL_HERE" />
  </wsdl:port>
</wsdl:service>


以编程方式执行此操作的最佳方法是什么?

如果位置可以更改,请将其保存在配置文件或数据库中的某个位置,然后执行以下操作:

str_replace('MY_URL_HERE', 'http://localhost/service') 

另一种方法是从客户端覆盖web服务的位置,例如:

$soapClient->__setLocation('http://www.example.com/soapservice');