ホームページ >バックエンド開発 >PHPチュートリアル >PHP は Web サービスを SOAP と CURL の 2 つのメソッドで呼び出します

PHP は Web サービスを SOAP と CURL の 2 つのメソッドで呼び出します

WBOY
WBOYオリジナル
2016-07-25 08:42:201297ブラウズ

http://www.webxml.com.cn/zh_cn/index.aspx を参照してください

1. SOAP コールを使用する

  1. //サーバーは SOAP 拡張機能をサポートしています:
  2. /*例 1:
  3. $client = new SoapClient("http://fy.webxml.com.cn/ webservices /English Chinese.asmx?wsdl");
  4. $parameters = array("wordKey"=>"test");
  5. //中国語と英語の双方向翻訳の戻りデータ: array
  6. $result = $client->TranslatorString( $parameters );
  7. echo "
    ";</li>
    <li> print_r($result->TranslatorStringResult)."<br />";</li>
    <li> echo "
    ";
  8. //中国語と英語の双方向translation return array 文例:
  9. $result1 = $client->Translator($parameters);
  10. echo "
    ";</li>
    <li> print_r($result1->TranslatorResult)."<br />"; </li>
    <li> echo "
    ";
  11. //候補単語を取得:
  12. $result2 = $client->SuggestWord($parameters);
  13. echo "
    ";</li>
    <li> print_r($result2->SuggestWordResult ). "<br />";</li>
    <li> echo "
    ";
  14. // 読み取った MP3 バイト ストリームを取得し、データを返します: バイト配列 Byte[]
  15. $result3 = $client->GetMp3( $parameters);
  16. echo "
    ";</li>
    <li> print_r($result3)."<br />";</li>
    <li> echo "
    ";
  17. */
  18. /*例 2:
  19. $client = new SoapClient("http://webservice.webxml.com.cn/WebServices/IpAddressSearchWebService.asmx?wsdl");
  20. $param = array('theIpAddress'=>'202.96.134.33');
  21. $ result = $client->get CountryCityByIp($param);
  22. echo "
    ";</li>
    <li> print_r($result->get CountryCityByIpResult);</li>
    <li> echo "
    ";
  23. $result1 = $ client ->getGeoIPContext($param);
  24. echo "
    ";</li>
    <li> print_r($result1);</li>
    <li> echo "
    ";
  25. $result2 = $client->getVersionTime(
  26. ) ;
  27. echo "
    ";</li>
    <li> print_r($result2);</li>
    <li> echo "
    ";
  28. */
  29. //例 3:
  30. $client = new SoapClient("http://webservice .webxml.com.cn/WebServices/MobileCodeWS.asmx?wsdl");
  31. //国内携帯電話番号の都道府県、地域、携帯電話カードの種類情報を取得します
  32. $parm=array('mobileCode'=>' 1367007',' userID'=>'');
  33. $result=$client->getMobileCodeInfo($parm);
  34. echo ($result->getMobileCodeInfoResult)."
    ";
  35. //Get国内の携帯電話番号 ジオデータベース情報
  36. $result1 = $client->getDatabaseInfo($parm);
  37. print_r($result1)."
    ";
  38. // SOAP タイプのリストを取得します ( SOAP タイプ)
  39. echo '
    ';</li>
    <li> print_r($client->__getTypes ()) ;</li>
    <li> echo '
    ';
  40. // webservice によって提供される関数を取得します
  41. echo '< pre>';
  42. print_r( $client->__getFunctions ()) ;
  43. echo '';
  44. //サーバーが SOAP 拡張機能をサポートしていない場合は、オンラインのオープンソース クラス ライブラリを導入できます
  45. ? >
コードをコピー


2.curl を使用して POST します


  1. cPost('l8200352367');
  2. /**
  3. * CURL の POST メソッドを使用してデータを送信します
  4. *@param string $xml $xml 送信するデータ
  5. */
  6. function cPost($phone){
  7. $curlPost = "mobileCode=$phone&userID=";
  8. $ ch =curl_init();//curlセッションを初期化し、ハンドルを返します
  9. curl_setopt($ch, CURLOPT_URL, "http://webservice.webxml.com.cn/WebServices/MobileCodeWS.asmx/getMobileCodeInfo");
  10. curl_setopt($ ch, CURLOPT_POST, 1);//有効にすると、通常の POST リクエストが送信されます。タイプは、フォーム送信と同じように application/x-www-form-urlencoded です
  11. curl_setopt($ch, CURLOPT_POSTFIELDS, $curlPost) ;
  12. curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);//curl_exec()で取得した情報を直接出力するのではなく、ファイルストリームの形式で返します
  13. $res =curl_exec($ch);
  14. curl_close($ch) ;
  15. var_dump ($res);
  16. }
コードをコピー
Web、phpの2種類


声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。