導航:首頁 > 編程語言 > php如何調用webservice

php如何調用webservice

發布時間:2022-12-19 08:25:51

php如何調用webservice

最近工作中需要用php調用webservice介面,對php不熟,上網搜搜,發現關於用php調用webservice的文章也不多,不少還是php4里用nusoap這個模塊調用的方法,其實php5里已經包含了處理soap的模塊,但是資料太少了,上php官網上查幫助,寫的不是很容易理解,經過多次實踐,終於搞清楚了,php調用webservice還是非常簡單的。下面用一個例子說明:
webservice服務是查詢QQ用戶是否在線
使用php5開發客戶端:
<?php
try{
//$client=newSoapClient("HelloService.wsdl",array('encoding'=>'UTF-8'));
$client=newSoapClient("webservices/qqOnlineWebService.asmx?wsdl");
var_mp($client->__getFunctions());
print("<br/>");
var_mp($client->__getTypes());
print("<br/>");

classqqCheckOnline{
var$qqCode="10000";
};
$arrPara=array(newqqCheckOnline);

$arrResult=$client->__Call("qqCheckOnline",$arrPara);//$client->qqCheckOnline($arrPara);

echo$arrResult->qqCheckOnlineResult."<br/>";
}catch(SOAPFault$e){
print$e;
}
?>
代碼確實很簡單吧,創建SoapClient對象時,可以使用保存在本地WSDL文件,也可以使用遠程的地址,後面的array數組里可以帶上很多的參數,具體參數可以查php的SoapClient幫助,這里帶的是字元集編碼,如果調用方法的參數里有中文,一定要指定字元集編碼,否則會出錯。
調用webservice前可以先調用SoapClient的__geunctions()和__getTypes()方法看一下你要調用的webservice暴露的方法,參數和數據類型,需要注意的是傳入的參數名一定要和soapclient裡面定義的一致,否則參數是傳不過去的。
需要使用SoapClient的__soapCall()或__call()方法,具體使用方法可以查php的幫助文檔。如果參數要求是一個結構體,請用類代替,如上面的代碼。
另外發現個問題,如果webservice方法返回的是xml格式的字元串,php接收到以後會自己把數據內容解析出來,而不是xml字元串.

㈡ PHP如何調用webservice

SOAP的WebService是可以直接使用的,php有支持SoapClient的,用起來很容易
<?php
$wsdl = "";
$client = new SoapClient($wsdl);
$param = array('arg0'=>'arg0','arg1'=>'arg1');
$ret = $client->getUserinfoByID($param);
if ($ret->return){
print_r($ret->return);
}else{
echo 'no user';
}
具體SoapClient需要php的soap支持,看phpinfo里有soap的話就可以了,比如這樣:
soap
Soap Client enabled
Soap Server enabled

Directive Local Value Master Value
soap.wsdl_cache 1 1
soap.wsdl_cache_dir /tmp /tmp
soap.wsdl_cache_enabled 1 1
soap.wsdl_cache_limit 5 5
soap.wsdl_cache_ttl 86400 86400

㈢ PHP調用.NET的WebService 簡單實例

創建一個C#的web
service,這個就不多說了,我用vs2008的wizard創建了一個最簡單的,讓它運行在:http://localhost/webservice1/service1.asmx
其中有個web
method像這樣的:
復制代碼
代碼如下:
[WebMethod]
public
string
HelloWorld()
{

return
"Hello
World";
}
ok,一切就緒。在某php文件中如下寫法:
php5本身就支持SOAP調用Web
Service:
<?php
//get
localization
strings
from
C#
webservice
$client
=
new
SoapClient('http://localhost/webservice1/Localization.asmx?wsdl');
echo
"Call
web
service
method
from
C#
WebService:\n";
$result
=
$client->GetLocalizationResource();
if(!is_soap_fault($result))
{
echo
"return:\n",
$result->GetLocalizationResourceResult;
}
else
{
echo
"soap
call
fault";
}
?>
這樣就OK了,會繼續介紹SOAP
以上所述就是本文的全部內容了,希望大家能夠喜歡。
請您花一點時間將文章分享給您的朋友或者留下評論。我們將會由衷感謝您的支持!

㈣ php怎麼調用java的https方式的webservice介面

直接調用就可以了···

㈤ php的webservice怎麼用

這個問題我記得回答過一次了,
樓上寫的太過於復雜,對於你一次都沒用過的,只需要簡單明白怎麼用就可以了。然後再可以自己慢慢研究。
Web
Service
是一種新的web應用程序分支,他們是自包含、自描述、模塊化的應用,可以發布、定位、通過web調用。Web
Service可以執行從簡單的請求到復雜商務處理的任何功能。一旦部署以後,其他Web
Service應用程序可以發現並調用它部署的服務.
實際上,他的出現的最佳好處就是跨平台操作,不在局限於web編程語言的限制。
php的一般的應用,服務方:根據一定的規則和用戶的參數生成一個標準的xml文檔。
獲得方:根據服務方的規則和自己的參數獲得服務方的xml文檔數據。然後分析xml數據。

㈥ php 中 webservice 是如何使用的 調用別人的介面 參數是如何傳遞的

php調用web service還是非常簡單的。下面用一個例子說明:
web service服務是查詢QQ用戶是否在線
使用php5開發客戶端:
<?php
try {
//$client = new SoapClient("HelloService.wsdl",array('encoding'=>'UTF-8'));
$client = new SoapClient("webservices/qqOnlineWebService.asmx?wsdl");
var_mp($client->__getFunctions());
print("");
var_mp($client->__getTypes());
print("");

class qqCheckOnline{
var $qqCode = "10000";
};
$arrPara = array(new qqCheckOnline);

$arrResult = $client->__Call("qqCheckOnline",$arrPara);//$client->qqCheckOnline($arrPara);

echo $arrResult->qqCheckOnlineResult . "";
} catch (SOAPFault $e) {
print $e;
}
?>
代碼確實很簡單吧,創建SoapClient對象時,可以使用保存在本地WSDL文件,也可以使用遠程的地址,後面的array數組里可以帶上很多的參數,具體參數可以查php的SoapClient幫助,這里帶的是字元集編碼,如果調用方法的參數里有中文,一定要指定字元集編碼,否則會出錯。
調
用web service前可以先調用SoapClient的__geunctions()和__getTypes()方法看一下你要調用的
web service暴露的方法,參數和數據類型,需要注意的是傳入的參數名一定要和soapclient裡面定義的一致,否則參數是傳不過去的。
需要使用SoapClient的__soapCall()或__call()方法,具體使用方法可以查php的幫助文檔。如果參數要求是一個結構體,請用類代替,如上面的代碼。
另外發現個問題,如果web service方法返回的是xml格式的字元串,php接收到以後會自己把數據內容解析出來,而不是xml字元串.

㈦ php怎樣通過SoapClient調用webservice介面

首先要先配置;extension=php_soap.dll我們打開php.ini
php怎樣通過SoapClient調用webservice介面

我們打開一個webservice的例子
php怎樣通過SoapClient調用webservice介面

怎樣看這個xml的文件呢,如下圖
php怎樣通過SoapClient調用webservice介面

下面我們開始寫代碼,先實例化SoapClient
php怎樣通過SoapClient調用webservice介面

使用介面方法,get_object_vars得到的是指定的對象中定義的屬性組成的關聯數組
php怎樣通過SoapClient調用webservice介面
6

最後運行一下測試一下
php怎樣通過SoapClient調用webservice介面

閱讀全文

與php如何調用webservice相關的資料

熱點內容
dvd光碟存儲漢子演算法 瀏覽:757
蘋果郵件無法連接伺服器地址 瀏覽:963
phpffmpeg轉碼 瀏覽:672
長沙好玩的解壓項目 瀏覽:145
專屬學情分析報告是什麼app 瀏覽:564
php工程部署 瀏覽:833
android全屏透明 瀏覽:737
阿里雲伺服器已開通怎麼辦 瀏覽:803
光遇為什麼登錄時伺服器已滿 瀏覽:302
PDF分析 瀏覽:486
h3c光纖全工半全工設置命令 瀏覽:143
公司法pdf下載 瀏覽:382
linuxmarkdown 瀏覽:350
華為手機怎麼多選文件夾 瀏覽:683
如何取消命令方塊指令 瀏覽:350
風翼app為什麼進不去了 瀏覽:778
im4java壓縮圖片 瀏覽:362
數據查詢網站源碼 瀏覽:151
伊克塞爾文檔怎麼進行加密 瀏覽:892
app轉賬是什麼 瀏覽:163