首页 > 后端开发 > php教程 > php调用web services两种方法soap和curl

php调用web services两种方法soap和curl

WBOY
发布: 2016-07-25 08:42:20
原创
1294 人浏览过

以http://www.webxml.com.cn/zh_cn/index.aspx

一、使用soap调用

  1. //服务器支持soap扩展:
  2. /*Example 1:
  3. $client = new SoapClient("http://fy.webxml.com.cn/webservices/EnglishChinese.asmx?wsdl");
  4. $parameters = array("wordKey"=>"test");
  5. //中英文双向翻译返回数据:数组
  6. $result = $client->TranslatorString($parameters);
  7. echo "
    ";
    登录后复制
    登录后复制
    登录后复制
    登录后复制
    登录后复制
    登录后复制
    登录后复制
  8. print_r($result->TranslatorStringResult)."
    ";
  9. echo "";
  10. //中英文双向翻译返回数组含句子例子:
  11. $result1 = $client->Translator($parameters);
  12. echo "
    ";
    登录后复制
    登录后复制
    登录后复制
    登录后复制
    登录后复制
    登录后复制
    登录后复制
  13. print_r($result1->TranslatorResult)."
    ";
  14. echo "";
  15. //获得候选词:
  16. $result2 = $client->SuggestWord($parameters);
  17. echo "
    ";
    登录后复制
    登录后复制
    登录后复制
    登录后复制
    登录后复制
    登录后复制
    登录后复制
  18. print_r($result2->SuggestWordResult)."
    ";
  19. echo "";
  20. //获得朗读MP3字节流,返回数据:字节数组 Byte[]
  21. $result3 = $client->GetMp3($parameters);
  22. echo "
    ";
    登录后复制
    登录后复制
    登录后复制
    登录后复制
    登录后复制
    登录后复制
    登录后复制
  23. print_r($result3)."
    ";
  24. echo "";
  25. */
  26. /*Example2:
  27. $client = new SoapClient("http://webservice.webxml.com.cn/WebServices/IpAddressSearchWebService.asmx?wsdl");
  28. $param = array('theIpAddress'=>'202.96.134.33');
  29. $result = $client->getCountryCityByIp($param);
  30. echo "
    ";
    登录后复制
    登录后复制
    登录后复制
    登录后复制
    登录后复制
    登录后复制
    登录后复制
  31. print_r($result->getCountryCityByIpResult);
  32. echo "";
  33. $result1 = $client->getGeoIPContext($param);
  34. echo "
    ";
    登录后复制
    登录后复制
    登录后复制
    登录后复制
    登录后复制
    登录后复制
    登录后复制
  35. print_r($result1);
  36. echo "";
  37. $result2 = $client->getVersionTime(
  38. );
  39. echo "
    ";
    登录后复制
    登录后复制
    登录后复制
    登录后复制
    登录后复制
    登录后复制
    登录后复制
  40. print_r($result2);
  41. echo "";
  42. */
  43. //Example3:
  44. $client = new SoapClient("http://webservice.webxml.com.cn/WebServices/MobileCodeWS.asmx?wsdl");
  45. //获得国内手机号码归属地省份、地区和手机卡类型信息
  46. $parm=array('mobileCode'=>'1367007','userID'=>'');
  47. $result=$client->getMobileCodeInfo($parm);
  48. echo ($result->getMobileCodeInfoResult)."
    ";
  49. //获得国内手机号码归属地数据库信息
  50. $result1 = $client->getDatabaseInfo($parm);
  51. print_r($result1)."
    ";
  52. // 获取SOAP类型列表(Returns list of SOAP types )
  53. echo '
    ';
    登录后复制
    登录后复制
  54. print_r($client->__getTypes ()) ;
  55. echo '';
  56. // 获取webservice提供的函数
  57. echo '
    ';
    登录后复制
    登录后复制
  58. print_r($client->__getFunctions ()) ;
  59. echo '';
  60. //服务器不支持soap扩展的情况下,可引入网上开源的类库
  61. ?>
复制代码


二、使用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


来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板