国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > PHP > 正文

PHP實現Soap通訊的方法

2020-03-22 20:14:47
字體:
來源:轉載
供稿:網友
本文實例講述了PHP實現Soap通訊的方法。分享給大家供大家參考。具體實現方法如下:
復制代碼 代碼如下: 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 = $html' target='_blank'>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'= '測試', //如果需要輸入二進制數據請采用BASE64編碼
'pass'= 'test'
);
echo HttpSoap('sample.anyhost.com', 80, '/sampleSoap.asmx', 'http://tempuri.org/', 'logIn', $data);
希望本文所述對大家的PHP程序設計有所幫助。PHP教程

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 仁怀市| 峨边| 保山市| 洛扎县| 和静县| 徐水县| 平谷区| 河南省| 阿克陶县| 平乐县| 当雄县| 龙井市| 辽中县| 武功县| 韩城市| 昭平县| 扶沟县| 延津县| 蛟河市| 富阳市| 永兴县| 尉犁县| 中西区| 大邑县| 卓资县| 隆子县| 普洱| 黎川县| 太康县| 桐柏县| 揭西县| 威远县| 湘乡市| 贡觉县| 梧州市| 拜泉县| 留坝县| 修文县| 四子王旗| 宝清县| 海宁市|