PHP5SOAP調(diào)用原理有哪些以及怎么實(shí)現(xiàn)-創(chuàng)新互聯(lián)

本篇文章為大家展示了PHP5SOAP調(diào)用原理有哪些以及怎么實(shí)現(xiàn),內(nèi)容簡明扼要并且容易理解,絕對(duì)能使你眼前一亮,通過這篇文章的詳細(xì)介紹希望你能有所收獲。

10余年的金林網(wǎng)站建設(shè)經(jīng)驗(yàn),針對(duì)設(shè)計(jì)、前端、開發(fā)、售后、文案、推廣等六對(duì)一服務(wù),響應(yīng)快,48小時(shí)及時(shí)工作處理。營銷型網(wǎng)站建設(shè)的優(yōu)勢是能夠根據(jù)用戶設(shè)備顯示端的尺寸不同,自動(dòng)調(diào)整金林建站的顯示方式,使網(wǎng)站能夠適用不同顯示終端,在瀏覽器中調(diào)整網(wǎng)站的寬度,無論在任何一種瀏覽器上瀏覽網(wǎng)站,都能展現(xiàn)優(yōu)雅布局與設(shè)計(jì),從而大程度地提升瀏覽體驗(yàn)。成都創(chuàng)新互聯(lián)從事“金林網(wǎng)站設(shè)計(jì)”,“金林網(wǎng)站推廣”以來,每個(gè)客戶項(xiàng)目都認(rèn)真落實(shí)執(zhí)行。

SOAP(SimpleObjectAccessProtocol)簡單對(duì)象訪問協(xié)議是在分散或分布式的環(huán)境中交換信息的簡單的協(xié)議,是一個(gè)基于XML的協(xié)議。下面創(chuàng)新互聯(lián)網(wǎng)站建設(shè)公司,小編來講解下PHP5SOAP調(diào)用原理有哪些?PHP5SOAP調(diào)用怎么實(shí)現(xiàn)?

PHP5SOAP調(diào)用原理

SOAP它包括四個(gè)部分:SOAP封裝(envelop),封裝定義了一個(gè)描述消息中的內(nèi)容是什么,是誰發(fā)送的,誰應(yīng)當(dāng)接受并處理它以及如何處理它們的框架;SOAP編碼規(guī)則(encodingrules),用于表示應(yīng)用程序需要使用的數(shù)據(jù)類型的實(shí)例;SOAPRPC表示(RPCrepresentation),表示遠(yuǎn)程過程調(diào)用和應(yīng)答的協(xié)定;SOAP綁定(binding),使用底層協(xié)議交換信息。

WSDL(WebServiceDescriptionLanguage)就是描述XMLWeb服務(wù)的標(biāo)準(zhǔn)XML格式,WSDL由Ariba、Intel、IBM和微軟等開發(fā)商提出。它用一種和具體語言無關(guān)的抽象方式定義了給定Web服務(wù)收發(fā)的有關(guān)操作和消息。就其定義來說,你還不能把WSDL當(dāng)作一種對(duì)象接口定義語言,例如,CORBA或COM等應(yīng)用程序體系結(jié)構(gòu)就會(huì)用到對(duì)象接口定義語言。WSDL保持協(xié)議中立,但它確實(shí)內(nèi)建了綁定SOAP的支持,從而同SOAP建立了不可分割的聯(lián)系。所以,當(dāng)我在該文中討論WSDL的時(shí)候,我會(huì)假定你把SOAP作為了你的通訊協(xié)議。

SOAP和WSDL雖然是webservice的兩大標(biāo)準(zhǔn),但是兩者并沒有必然的聯(lián)系,都可以獨(dú)立使用。它們之間的關(guān)系就類似HTTP和Html之間的關(guān)系。前者是一種協(xié)議,后者是對(duì)一個(gè)WebServer的描述。

PHP5SOAP調(diào)用怎么實(shí)現(xiàn)

PHP5下的配置

在php的的配置文件php.ini中,找到

extension=php_soap.dll

然后將前面的;號(hào)去掉,然后重啟web服務(wù)

查詢webservice方法與參數(shù)、數(shù)據(jù)類型

某省電信公司的入單接口為http://***.******.com/services/AcceptedBusinesswsdl

我們使用SoapClient的__geunctions()和__getTypes()方法查看該接口的方法,參數(shù)和數(shù)據(jù)類型

只有__getFunctions中列出的接口才能被soap調(diào)用。

在根目錄下創(chuàng)建代碼soap.php

header("content-type:text/html;charset=utf-8");

try{

$client=newSoapClient("http://***.******.com/services/AcceptedBusinesswsdl");

print_r($client->__getFunctions());

print_r($client->__getTypes());

}catch(SOAPFault$e){

print$e;

}

>

在瀏覽器運(yùn)行:http://localhost/soap.php后,返回結(jié)果如下

Array

(

[0]=>ArrayOf_xsd_anyTypeintroduceAcceptedBusiness(string$c3,string$c4,string$linkman,string$linknum,string$num,string$idcard,string$remark,string$address)

[1]=>ArrayOf_xsd_anyTypeintroduceAcceptedBusinessByAiZhuangWei(string$subname,string$linkphone,string$idcard,string$address,string$businesstype,string$marketcode,string$surveycode,string$commanager,string$commanagerphone,string$bendiwang,string$fenju,string$zhiju,string$remark)

[2]=>stringintroduceAcceptedBusinessByStandardInterface(string$xmlStr)

[3]=>stringintroduceAcceptedBusinessByCallOut(string$xmlStr)

[4]=>stringintroduceAcceptedBusinessByYddj(string$xmlParam)

[5]=>ArrayOf_xsd_anyTypequeryAcceptedBusinessByAiZhuangWei(string$surveycode,string$starttime,string$endtime)

[6]=>stringqueryCallOutOrderByConfig(string$xmlParam)

)

Array

(

[0]=>anyTypeArrayOf_xsd_anyType[]

)

其中有個(gè)方法introduceAcceptedBusinessByStandardInterface(string$xmlStr),將是開發(fā)文檔中提到的要使用的接口,參數(shù)為xml字符串

另外有的接口中提到有SoapHeader認(rèn)證,這就需要加入__setSoapHeaders方法,具體可查看http://php.net/manual/zh/soapclient.setsoapheaders.php

提交入單

這一步就是需要根據(jù)開發(fā)文檔拼接xml字符串,然后作為introduceAcceptedBusinessByStandardInterface的參數(shù)傳入

創(chuàng)建acceptedbusiness.php,內(nèi)容如下

header("content-type:text/html;charset=utf-8");

try{

$client=newSoapClient('http://***.*******.com/services/AcceptedBusinesswsdl');

$xml="

**電信

張三

13412341234

廣東深圳

iPhone6

1111111111111111111111111111111

2111

1111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111

";

$return=$client->introduceAcceptedBusinessByStandardInterface($xml);

print_r($return);

}catch(SOAPFault$e){

print_r('Exception:'.$e);

}

>

在瀏覽器中執(zhí)行后,返回

0

入單成功!

2014100905523549742

上述內(nèi)容就是PHP5SOAP調(diào)用原理有哪些以及怎么實(shí)現(xiàn),你們學(xué)到知識(shí)或技能了嗎?如果還想學(xué)到更多技能或者豐富自己的知識(shí)儲(chǔ)備,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。

網(wǎng)站題目:PHP5SOAP調(diào)用原理有哪些以及怎么實(shí)現(xiàn)-創(chuàng)新互聯(lián)
本文地址:http://www.muchs.cn/article14/dsjgde.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供云服務(wù)器、企業(yè)網(wǎng)站制作、靜態(tài)網(wǎng)站、App設(shè)計(jì)、網(wǎng)站設(shè)計(jì)公司全網(wǎng)營銷推廣

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

成都app開發(fā)公司