校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃

主頁 > 知識庫 > PHP中soap用法示例【SoapServer服務(wù)端與SoapClient客戶端編寫】

PHP中soap用法示例【SoapServer服務(wù)端與SoapClient客戶端編寫】

熱門標簽:兼職做地圖標注好賺錢嗎 蘇州外呼系統(tǒng)有效果嗎 海南外呼系統(tǒng)方案 400 電話 辦理 打開百度地圖標注 亳州企業(yè)外呼系統(tǒng) 山東電銷卡外呼系統(tǒng)原理是什么 地圖標注怎么做商戶驗證 智能電銷語音機器人資訊

本文實例講述了PHP中soap用法。分享給大家供大家參考,具體如下:

一、首先要設(shè)置服務(wù)器環(huán)境

修改php.ini

得添加extension=php_soap.dll (加載soap 內(nèi)置包)

修改soap.wsdl_cache_enabled=1 改為soap.wsdl_cache_enabled=0 這個是soap的緩存,測試的時候最好改為0,上線穩(wěn)定了改為1

soap有兩種模式一種是wsdl,一種是no-wsdl

二、熟悉幾個函數(shù)

1. SoapServer

SoapServer用于創(chuàng)建php服務(wù)器端頁面時定義可被調(diào)用的函數(shù)及返回 響應(yīng)數(shù)據(jù)

格式:

$soap = new SoapServer($wsdl,$array); 

其中,$wsdl為soap使用得wsdl文件,wsdl是描述Web Service的一種 標準格式,若將$wsdl設(shè)置為null,則表示不使用wsdl模式。
$array是 SoapServer的屬性信息,是一個數(shù)組。
SoapServer對象的addFunction方法是用來聲明哪個函數(shù)可以被客戶端調(diào)用, 語法格式如下:

$soap->addFunction($function_name);

其中,$soap是一個SoapServer對象,$function_name是需要被調(diào)用的函數(shù)名。

SoapServer對象的handle方法用來處理用戶輸入并調(diào)用相應(yīng)的函數(shù),最后返回 給客戶端處理的結(jié)果。語法格式如下:

$soap->handle([$soap_request]); 

其中,$soap是一個SoapServer對象,$soap_request是一個可選參數(shù),用來表示 用戶的請求信息。如果不指定$soap_request,則表示服務(wù)器將接收用戶的全部 請求。

2. SoapClient

SoapClient用于調(diào)用遠程服務(wù)器上的SoapServer頁面,并實現(xiàn)了對相應(yīng)函數(shù)的調(diào)用

格式:

$soap = new SoapClient($wsdl,$array); 

參數(shù)$wsdl和$array與SoapServer相同

SoapClient的方法, 創(chuàng)建語法如下:

$soap->user_function($params); 

其中,$soap是一個SoapClient對象,user_function是服務(wù)器端要調(diào)用的函數(shù),$params 是要傳入函數(shù)的參數(shù)。

3. SoapFault

SoapFault用于生成soap訪問過程中可能出現(xiàn)的錯誤。創(chuàng)建一個soapFault對象的語法格式

格式:

$fault = new SoapFault($faultcode,$faultstring); 

其中,$faultcode是用戶定義的錯誤代碼,$faultstring是用戶自定義的錯誤信息。soapFault 對象會在服務(wù)器端頁面出現(xiàn)錯誤時自動生成,或者通過用戶自行創(chuàng)建SoapFault對象時生成。對于 Soap訪問時出現(xiàn)的錯誤,客戶端可通過捕捉SoapFalut對象來獲得相應(yīng)的錯誤信息。 在客戶端捕獲SoapFault對象后,可以通過下面的代碼獲得錯誤代碼和錯誤信息。

$fault->faultcode;//錯誤代碼 
$fault->faultstring;//錯誤信息 

其中,$fault是在前面創(chuàng)建的SoapFault對象。

4. SoapHeader

soapheader用于描述soap的header信息,一般用于認證

/*
 *SoapHeader參數(shù)說明如下所示:
 *'http://tempuri.org/'  namespace(命名空間可省略)
 *'MySoapHeader'     SoapHeader頭的類名
 *'array(...)'      存放標識身份的字符串參數(shù)
 *'true'         是否必須處理該header
*/

格式:

$h = new SoapHeader('http://192.168.0.153/hao/', 'auth', '123456789', false, SOAP_ACTOR_NEXT);

三、實例

不用wsdl模式的代碼

服務(wù)端:

//認證服務(wù)端
class Test{
  public function auth($a)
  {
    if($a != '123456789'){
      throw new SoapFault('Server', '您無權(quán)訪問');
    }
  }
  function say()
  {
    return 'Hi11111';
  }
}
$srv = new SoapServer(null, array('uri' => 'http://192.168.0.153/hao'));
$srv->setClass('Test');
$srv->handle();

Test類中auth是認證判斷的,這個方法對應(yīng)客戶端soapheader中的方法

客戶端:

//加密的客戶端
$cli = new SoapClient(null, array('uri' => 'http://192.168.0.153/hao/', 'location' => 'http://192.168.0.153/hao/test.php', 'trace' => true,'encoding'=>'utf-8'));
$h = new SoapHeader('http://192.168.0.153/hao/', 'auth', '123456789', false, SOAP_ACTOR_NEXT);
$cli->__setSoapHeaders(array($h));
try {
echo $cli->say();
} catch (Exception $e) {
echo $e->getMessage();
}

soapheader中auth對應(yīng)服務(wù)端auth方法

如果不 認證,可以去掉下面這兩行:

$h = new SoapHeader('http://192.168.0.153/hao/', 'auth', '123456789', false, SOAP_ACTOR_NEXT);
$cli->__setSoapHeaders(array($h));

wsdl模式

首先先生成wsdl文件,至于怎么生成網(wǎng)站很多

服務(wù)端:

//wsdl服務(wù)端
Require './server.class.php';
$server = new SoapServer('./server.wsdl');
$server->setClass('Server');
$server->handle();

server.class.php類代碼

class Server {
  public function auth($a){
    if($a != '123456789'){
    throw new SoapFault('Server', '您無權(quán)訪問');
    }
  }
  public function test() {
    return 'you are testing';
  }
}

客戶端:

//wsdl文件客戶端
$soap = new SoapClient('http://192.168.0.153/hao/server.wsdl'); //如果是遠程,那當然寫dizzylion.wsdl的URL了。
$h = new SoapHeader('http://192.168.0.153/hao/', 'auth', '123456789', false, SOAP_ACTOR_NEXT);
$soap->__setSoapHeaders(array($h));
try {
echo $soap->test();
} catch (Exception $e) {
echo $e->getMessage();
}

更多關(guān)于PHP相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《php socket用法總結(jié)》、《php字符串(string)用法總結(jié)》、《PHP數(shù)學(xué)運算技巧總結(jié)》、《php面向?qū)ο蟪绦蛟O(shè)計入門教程》、《PHP數(shù)組(Array)操作技巧大全》、《PHP數(shù)據(jù)結(jié)構(gòu)與算法教程》、《php程序設(shè)計算法總結(jié)》及《PHP網(wǎng)絡(luò)編程技巧總結(jié)》

希望本文所述對大家PHP程序設(shè)計有所幫助。

您可能感興趣的文章:
  • Java虛擬機JVM之server模式與client模式的區(qū)別
  • Python Socket實現(xiàn)簡單TCP Server/client功能示例
  • Android系統(tǒng)進程間通信(IPC)機制Binder中的Server和Client獲得Service Manager接口之路
  • python實現(xiàn)的udp協(xié)議Server和Client代碼實例
  • SQL Server Native Client下載 SQL Server Native Client安裝方法
  • 使用Java實現(xiàn)簡單的server/client回顯功能的方法介紹
  • python client使用http post 到server端的代碼
  • Asp.Net 不同的OnClick事件區(qū)別小結(jié)(onserverclick,onclientclick)
  • JVM Client和Server端有什么區(qū)別

標簽:紹興 金華 萊蕪 安康 呼倫貝爾 溫州 綏化 清遠

巨人網(wǎng)絡(luò)通訊聲明:本文標題《PHP中soap用法示例【SoapServer服務(wù)端與SoapClient客戶端編寫】》,本文關(guān)鍵詞  PHP,中,soap,用法,示例,SoapServer,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《PHP中soap用法示例【SoapServer服務(wù)端與SoapClient客戶端編寫】》相關(guān)的同類信息!
  • 本頁收集關(guān)于PHP中soap用法示例【SoapServer服務(wù)端與SoapClient客戶端編寫】的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃
    奇米一区二区三区av| 欧美精品在线视频| 国产999精品久久久久久| 麻豆成人久久精品二区三区小说| 日韩不卡一二三区| 免费一级欧美片在线观看| 秋霞午夜鲁丝一区二区老狼| 午夜精品福利一区二区蜜股av | 亚洲五月六月丁香激情| 亚洲天堂福利av| 亚洲男人的天堂av| 亚洲欧美一区二区三区极速播放| 亚洲品质自拍视频| 五月婷婷综合网| 秋霞午夜鲁丝一区二区老狼| 精品亚洲欧美一区| 国产成人一区二区精品非洲| 成人av电影在线| 色狠狠色噜噜噜综合网| 欧美三级电影网| 日韩一区二区免费在线电影 | 天天亚洲美女在线视频| 日韩激情视频在线观看| 激情欧美一区二区三区在线观看| 国产一区二区伦理片| 国产91在线|亚洲| 色噜噜狠狠色综合中国| 欧美日韩午夜在线视频| 日韩一区二区精品葵司在线| 男女视频一区二区| 国产精品 日产精品 欧美精品| 成人在线视频首页| 在线观看欧美日本| 日韩欧美国产小视频| 中文字幕欧美国产| 亚洲一区在线看| 久久精品免费观看| 99精品久久免费看蜜臀剧情介绍| 欧美午夜精品久久久久久超碰| 欧美一级二级三级乱码| 欧美激情中文不卡| 一区二区视频在线看| 奇米色一区二区| 成人一二三区视频| 欧美美女bb生活片| 欧美国产一区二区| 天天综合日日夜夜精品| 国产成人亚洲综合a∨猫咪| k8久久久一区二区三区| 中文字幕人成不卡一区| 日韩一区精品字幕| 成人午夜看片网址| 欧美一区二区三区在| 国产精品久久久久久久第一福利| 丝袜美腿亚洲一区二区图片| 国产91清纯白嫩初高中在线观看 | 久久综合999| 亚洲综合999| 国产盗摄一区二区| 91精品国产综合久久久久久| 国产欧美视频一区二区三区| 午夜精品视频在线观看| 波多野结衣精品在线| 日韩精品一区在线| 亚洲国产精品一区二区www| 国产精品一二三四| 日韩三区在线观看| 亚洲一区二区三区四区的 | 欧美日韩在线精品一区二区三区激情| 亚洲精品在线一区二区| 亚洲国产综合在线| 91免费在线视频观看| 国产日产欧美一区二区视频| 日本不卡中文字幕| 欧美性三三影院| 综合欧美亚洲日本| 成人网在线播放| 欧美成人伊人久久综合网| 性做久久久久久| 一本一道久久a久久精品综合蜜臀| 精品日韩av一区二区| 亚洲成人福利片| 色婷婷精品久久二区二区蜜臂av| 久久久久久一级片| 国产一区二区三区美女| 日韩三级免费观看| 青青草成人在线观看| 欧美三级韩国三级日本一级| 亚洲视频一区在线| 成人久久视频在线观看| 欧美激情在线一区二区| 国产一区在线观看麻豆| 欧美一级电影网站| 日韩不卡一区二区三区| 欧美一区二区视频免费观看| 亚洲成人免费观看| 欧美日韩一区二区在线观看| 亚洲国产一区二区在线播放| 一本大道久久a久久精二百| 国产精品你懂的在线欣赏| 国产黄色精品视频| 国产亚洲精品aa| 国产精品一区免费在线观看| 欧美精品一区视频| 韩国一区二区三区| 久久久久国色av免费看影院| 国产在线视视频有精品| 国产婷婷一区二区| 99在线热播精品免费| 亚洲三级电影全部在线观看高清| 不卡电影一区二区三区| 亚洲视频在线一区| 欧美三片在线视频观看| 日韩高清国产一区在线| 日韩视频在线永久播放| 日韩不卡一区二区| 性做久久久久久久久| 日韩精品一区二区三区老鸭窝| 欧美一区日韩一区| 91欧美激情一区二区三区成人| 日韩精品91亚洲二区在线观看| 2021中文字幕一区亚洲| 91丨porny丨最新| 国产主播一区二区三区| 亚洲国产综合91精品麻豆| 中国av一区二区三区| 3d动漫精品啪啪一区二区竹菊| 欧美在线啊v一区| 国产精品无遮挡| 国产真实乱对白精彩久久| 国产精品免费av| 色婷婷精品大在线视频| 日本aⅴ免费视频一区二区三区| 欧美成人精品3d动漫h| 国产成人午夜片在线观看高清观看| 欧美国产精品专区| 在线观看日韩av先锋影音电影院| 日本vs亚洲vs韩国一区三区二区| 久久亚洲一级片| 色欧美片视频在线观看| 日韩av一区二| 国产喂奶挤奶一区二区三区| 91官网在线观看| 久久成人免费网| 亚洲欧美在线视频| 日韩三级免费观看| 99九九99九九九视频精品| 日韩不卡手机在线v区| 中文av字幕一区| 欧美一级淫片007| 不卡视频一二三| 麻豆精品视频在线观看| 欧美国产激情二区三区 | 久久久久久久久99精品| 99v久久综合狠狠综合久久| 日韩和欧美的一区| **欧美大码日韩| 精品国产一区二区三区不卡| 91毛片在线观看| 久久97超碰国产精品超碰| 一区二区三区波多野结衣在线观看| 日韩亚洲欧美高清| 一本一本久久a久久精品综合麻豆 一本一道波多野结衣一区二区 | 亚洲欧美日韩国产一区二区三区| 91精品久久久久久久久99蜜臂| 9i在线看片成人免费| 欧美精品一卡二卡| 日韩一区二区在线观看视频播放| 亚洲欧美日韩久久精品| 日本特黄久久久高潮| 成人在线一区二区三区| 欧美日韩国产小视频| 国产精品美女视频| 青青草原综合久久大伊人精品| 国产精品18久久久久久久久久久久 | 这里只有精品99re| 一区二区在线观看视频| 国产原创一区二区| 色综合久久88色综合天天| 国产老妇另类xxxxx| 日日夜夜精品视频免费| 亚洲综合成人在线视频| 日韩毛片精品高清免费| 国产无遮挡一区二区三区毛片日本| 欧美一区二区在线视频| 在线精品亚洲一区二区不卡| 成人av在线影院| 国产精品亚洲午夜一区二区三区| 另类小说欧美激情| 日韩av中文字幕一区二区三区 | 日韩在线一区二区| 一二三四区精品视频| 亚洲男人的天堂在线aⅴ视频| 中文字幕乱码一区二区免费| 精品少妇一区二区三区| 日韩视频一区二区三区| 欧美一区二区在线看| 日韩一区二区三区在线观看| 91精品国产综合久久久蜜臀粉嫩 | 3d动漫精品啪啪1区2区免费 |