最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

PHP實(shí)現(xiàn)Soap通訊的方法

 更新時(shí)間:2014年11月03日 14:14:03   投稿:shichen2014  
這篇文章主要介紹了PHP實(shí)現(xiàn)Soap通訊的方法,是web service的一個(gè)典型應(yīng)用,需要的朋友可以參考下

本文實(shí)例講述了PHP實(shí)現(xiàn)Soap通訊的方法。分享給大家供大家參考。具體實(shí)現(xiàn)方法如下:

復(fù)制代碼 代碼如下:
<?php
function HttpSoap($server, $port, $url, $namespace, $action, $data) {
$fp = @fsockopen($server, $port);
if (!$fp) {
return FALSE;
} else {
$soapData = ConstructData($namespace, $action, $data);
$length = strlen($soapData);
$out = "POST $url HTTP/1.1\r\n";
$out .= "Host: $server\r\n";
$out .= "Content-Type: text/xml; charset=utf-8\r\n";
$out .= "Content-Length: $length\r\n";
$out .= "SOAPAction: \"$namespace$action\"\r\n\r\n";
$out .= $soapData;
$out .= "\r\n\r\n";
fputs($fp, $out);
stream_set_timeout($fp, 2);
$header = "";
while($line = trim(fgets($fp))) {
$header .= $line."\n";
}
$dataPos = strpos($header, "Content-Length: ") + 16;
$dataEnd = strpos($header, "\n", $dataPos);
$dataLength = substr($header, $dataPos, $dataEnd - $dataPos);
$data = "";
if($dataLength > 0) {
$data = fread($fp, $dataLength);
}
fclose($fp);
if(strlen($data) != $dataLength || $dataLength <= 0) {
return FALSE;
}
return $data;
}
}
function ConstructData($namespace, $action, $data) {
$soapData = "
<?xml version="1.0\" encoding=\"utf-8\"?>
\r\n";
$soapData .= "<soap:Envelope xmlns:xsi=\http://www.w3.org/2001/XMLSchema-instance\ xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\" xmlns:soap=\"\r\n'>http://schemas.xmlsoap.org/soap/envelope/\">\r\n";
$soapData .= " <soap:Body>\r\n";
$soapData .= " <$action xmlns=\"$namespace\">\r\n";
foreach($data as $name => $value) {
$name = iconv("GBK","UTF-8",$name);
$value= iconv("GBK","UTF-8",$value);
$soapData .= " <$name>$value</$name>\r\n";
}
$soapData .= " </$action>\r\n";
$soapData .= " </soap:Body>\r\n";
$soapData .= "</soap:Envelope>";
return $soapData;
}
<?
$data=array(
'user'=>'測試', //如果需要輸入二進(jìn)制數(shù)據(jù)請采用BASE64編碼
'pass'=>'test'
);
echo HttpSoap('sample.anyhost.com', 80, '/sampleSoap.asmx', 'http://tempuri.org/', 'logIn', $data);
?>

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

相關(guān)文章

  • php中檢查文件或目錄是否存在的代碼小結(jié)

    php中檢查文件或目錄是否存在的代碼小結(jié)

    檢查文件或目錄是否存在 ,我們使用了php中常用的函數(shù)file_exists,這個(gè)函數(shù)就可以實(shí)現(xiàn)我想要的功能,下面大家慢慢參考一下
    2012-10-10
  • 簡單談?wù)凱HP中的Reload操作

    簡單談?wù)凱HP中的Reload操作

    通常修改了 PHP 的配置后,為了讓修改生效會(huì)執(zhí)行 reload,而不是 restart,但最近在使用Reload操作的時(shí)候發(fā)現(xiàn)了502錯(cuò)誤,想著還是要重新思考這個(gè)問題。所以這篇文章主要給大家介紹了關(guān)于PHP中Reload操作的內(nèi)容,有需要的朋友們可以參考借鑒,下面來一起看看吧。
    2016-12-12
  • php 常用類整理

    php 常用類整理

    在實(shí)際開發(fā)過程會(huì)經(jīng)常會(huì)遇到一些重復(fù)的操作,如果每次都要自己去實(shí)現(xiàn)這無疑加重了自己的工作量,下面對一些可能經(jīng)常用到的類做個(gè)整理.
    2009-12-12
  • 分析php://output和php://stdout的區(qū)別

    分析php://output和php://stdout的區(qū)別

    本篇文章給大家詳細(xì)分析了php://output和php://stdout的用法區(qū)別以及實(shí)例代碼分享,有需要的朋友可以參考學(xué)習(xí)下。
    2018-05-05
  • PHP日志LOG類定義與用法示例

    PHP日志LOG類定義與用法示例

    這篇文章主要介紹了PHP日志LOG類定義與用法,結(jié)合實(shí)例形式分析了日志log的具體定義及使用方法,涉及php文件讀寫、日期時(shí)間及字符串等相關(guān)操作技巧,需要的朋友可以參考下
    2018-09-09
  • PHP中信息格式化操作詳解(MessageFormatter類)

    PHP中信息格式化操作詳解(MessageFormatter類)

    這篇文章主要給大家介紹了關(guān)于PHP中信息格式化操作的相關(guān)資料,主要運(yùn)用的是專門用于信息格式化的MessageFormatter類,文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2021-07-07
  • PHP文件操作詳解

    PHP文件操作詳解

    這篇文章主要介紹了PHP文件操作,包括文件讀取、判斷文件是否存在、修改時(shí)間等,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-12-12
  • 試用php中oci8擴(kuò)展

    試用php中oci8擴(kuò)展

    這里如何給php開啟oci8的擴(kuò)展就不講了,小伙伴們自行度娘吧,這里僅僅給大家分享下php操作Oracle的類,有需要的小伙伴可以參考下。
    2015-06-06
  • 詳解Laravel制作API接口

    詳解Laravel制作API接口

    API(Application Programming Interface,應(yīng)用程序編程接口)是一些預(yù)先定義的函數(shù),目的是提供應(yīng)用程序與開發(fā)人員基于某軟件或硬件得以訪問一組例程的能力,而又無需訪問源碼,或理解內(nèi)部工作機(jī)制的細(xì)節(jié)。本文將詳細(xì)介紹Laravel制作API接口。
    2021-05-05
  • PHP Cookie學(xué)習(xí)筆記

    PHP Cookie學(xué)習(xí)筆記

    這篇文章主要為大家分享了PHP Cookie學(xué)習(xí)筆記,告訴大家什么是Cookie,Cookie的功能有哪些? 如何創(chuàng)建、讀取、刪除Cookie,感興趣的小伙伴們可以參考一下
    2016-08-08

最新評論

清原| 曲周县| 宜川县| 白朗县| 定南县| 常州市| 溆浦县| 安泽县| 东辽县| 汾西县| 乌审旗| 玉龙| 长丰县| 武汉市| 花垣县| 上高县| 虹口区| 克拉玛依市| 禹城市| 隆回县| 奉新县| 嵊州市| 定州市| 榆林市| 安义县| 宣武区| 略阳县| 罗源县| 崇文区| 元谋县| 金川县| 兰溪市| 嘉定区| 长乐市| 新沂市| 九龙县| 新疆| 布尔津县| 肃南| 彭阳县| 保德县|