php调用web services两种方法soap和curl
2018-07-20 来源:open-open
以http://www.webxml.com.cn/zh_cn/index.aspx
一、使用soap调用
<?php //服务器支持soap扩展: /*Example 1: $client = new SoapClient("http://fy.webxml.com.cn/webservices/EnglishChinese.asmx?wsdl"); $parameters = array("wordKey"=>"test"); //中英文双向翻译返回数据:数组 $result = $client->TranslatorString($parameters); echo "<pre>"; print_r($result->TranslatorStringResult)."<br />"; echo "</pre>"; //中英文双向翻译返回数组含句子例子: $result1 = $client->Translator($parameters); echo "<pre>"; print_r($result1->TranslatorResult)."<br />"; echo "</pre>"; //获得候选词: $result2 = $client->SuggestWord($parameters); echo "<pre>"; print_r($result2->SuggestWordResult)."<br />"; echo "</pre>"; //获得朗读MP3字节流,返回数据:字节数组 Byte[] $result3 = $client->GetMp3($parameters); echo "<pre>"; print_r($result3)."<br />"; echo "</pre>"; */ /*Example2: $client = new SoapClient("http://webservice.webxml.com.cn/WebServices/IpAddressSearchWebService.asmx?wsdl"); $param = array('theIpAddress'=>'202.96.134.33'); $result = $client->getCountryCityByIp($param); echo "<pre>"; print_r($result->getCountryCityByIpResult); echo "</pre>"; $result1 = $client->getGeoIPContext($param); echo "<pre>"; print_r($result1); echo "</pre>"; $result2 = $client->getVersionTime( ); echo "<pre>"; print_r($result2); echo "</pre>"; */ //Example3: $client = new SoapClient("http://webservice.webxml.com.cn/WebServices/MobileCodeWS.asmx?wsdl"); //获得国内手机号码归属地省份、地区和手机卡类型信息 $parm=array('mobileCode'=>'1367007','userID'=>''); $result=$client->getMobileCodeInfo($parm); echo ($result->getMobileCodeInfoResult)."<br>"; //获得国内手机号码归属地数据库信息 $result1 = $client->getDatabaseInfo($parm); print_r($result1)."<br>"; // 获取SOAP类型列表(Returns list of SOAP types ) echo '<pre>'; print_r($client->__getTypes ()) ; echo '</pre>'; // 获取webservice提供的函数 echo '<pre>'; print_r($client->__getFunctions ()) ; echo '</pre>'; //服务器不支持soap扩展的情况下,可引入网上开源的类库 ?>
二、使用curl中POST
<?php cPost('l8200352367'); /** * 使用CURL中POST方式提交数据 *@param string $xml 要提交的$xml数据 */ function cPost($phone){ $curlPost = "mobileCode=$phone&userID="; $ch = curl_init();//初始化curl会话,返回一个句柄 curl_setopt($ch, CURLOPT_URL, "http://webservice.webxml.com.cn/WebServices/MobileCodeWS.asmx/getMobileCodeInfo"); curl_setopt($ch, CURLOPT_POST, 1);//启用时会发送一个常规的POST请求,类型为:application/x-www-form-urlencoded,就像表单提交的一样 curl_setopt($ch, CURLOPT_POSTFIELDS, $curlPost); curl_setopt($ch, CURLOPT_RETURNTRANSFER , 1);//将 curl_exec() 获取的信息以文件流的形式返回,而不是直接输出 $res = curl_exec($ch); curl_close($ch); var_dump($res); }
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点!
本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。
上一篇: PHP防止用户重复提交表单
最新资讯
热门推荐