1. 如果php文件都是UTF8格式的,需要注意不能有BOM头,否则会报错:looks like we got no XML document。
2. 如果php的类库文件中有执行错误,也会报错:looks like we got no XML document。
3. 需要在PHP的扩展设置中,打开PHP_SOAP选项,并重启。
4. soap配置的地址有三个地方,一个是server.php中,一个是client.php,另外就是WSDL文件
[server.php]
include_once 'SoapService.class.php'//define the php class 'Soapservice'
$server=new SoapServer('http://192.168.1.100/soap/Test.wsdl', array('soap_version' => SOAP_1_2));
$server->setClass("SoapService");
$server->handle();
[client.php]
$client = new SoapClient('http://192.168.1.100/soap/Test.wsdl);
$client->HelloWorld();
[Test.wsdl]
<service name="TestService">
<port name="SoapServicePort" binding="typens:SoapServiceBinding">
<soap:address location="http://192.168.1.100/soap/server.php"/>
</port>
</service>
[soapService.php]
class SoapService
{
/**
*
* Test the soap.
* @return string
*/
public function HelloWorld() {
return 'Hello World!';
}
}