php調用web services兩種方法soap和curl
以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); }
本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!