php使用saop简单例子和注意事项

时间:2021-09-13 08:47:48

首先配置下PHP的soap环境支持:

找到php.ini文件
;extension=php_soap.dll

;always_populate_raw_post_data = -1

删除掉";" ,启用这两个扩展,重启apache服务器。

服务端:soap.php

<?php
function getServiceIP(){
return "1.1.1.1";
}
$soap = new SoapServer(null,array('uri'=>"vinson"));
$soap->addFunction('getServiceIP');
$soap->addFunction(SOAP_FUNCTIONS_ALL);
$soap->handle();
?>

客户端:调用

try {
$client = new SoapClient(null,
array('location' =>"http://192.168.1.110/soap.php",'uri' => "vinson",'trace' =>1)
);
echo $client->getServiceIP();
} catch (SoapFault $fault){
echo "Error: ",$fault->faultcode,", string: ",$fault->faultstring;
}

当中的uri是匹配标志,两边要一致,随便什么值

location自然是需要调用的soap文件,此文件可置于另外一个网站里面

楼主一直提示

Error: Client, string: looks like we got no XML document

近乎抓狂,原来是有个扩展未开启。

;always_populate_raw_post_data = -1