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

首頁 > 開發 > PHP > 正文

PHP實現Soap通訊的方法

2024-05-04 23:26:44
字體:
來源:轉載
供稿:網友
這篇文章主要介紹了PHP實現Soap通訊的方法,是web service的一個典型應用,需要的朋友可以參考下
 
 

本文實例講述了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 => $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程序設計有所幫助。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 武穴市| 马关县| 北辰区| 临海市| 德令哈市| 沂南县| 新郑市| 孟村| 汉阴县| 襄汾县| 修武县| 崇仁县| 洛川县| 晋城| 潮州市| 七台河市| 新闻| 京山县| 嵊泗县| 贵南县| 湘潭县| 吉木乃县| 梅河口市| 鄂伦春自治旗| 新竹县| 正镶白旗| 库伦旗| 伊宁县| 寻乌县| 东丽区| 互助| 孟津县| 南川市| 两当县| 邵武市| 微博| 灵璧县| 马鞍山市| 寿阳县| 渑池县| 柳州市|