php以post形式发送xml的方法
程序员文章站
2022-05-30 08:30:45
本文实例讲述了php以post形式发送xml的方法。分享给大家供大家参考。具体方法如下:
方法一,使用curl:
复制代码 代码如下:$xml_data =
本文实例讲述了php以post形式发送xml的方法。分享给大家供大家参考。具体方法如下:
方法一,使用curl:
复制代码 代码如下:
$xml_data = <xml>...</xml>";
$url = 'http://www.xxxx.com';
$header[] = "content-type: text/xml";//定义content-type为xml
curl_setopt($ch, curlopt_url, $url);
curl_setopt($ch, curlopt_returntransfer, 1);
curl_setopt($ch, curlopt_httpheader, $header);
curl_setopt($ch, curlopt_post, 1);
curl_setopt($ch, curlopt_postfields, $xml_data);
$response = curl_exec($ch);
if(curl_errno($ch))
{
print curl_error($ch);
}
curl_close($ch);
$url = 'http://www.xxxx.com';
$header[] = "content-type: text/xml";//定义content-type为xml
curl_setopt($ch, curlopt_url, $url);
curl_setopt($ch, curlopt_returntransfer, 1);
curl_setopt($ch, curlopt_httpheader, $header);
curl_setopt($ch, curlopt_post, 1);
curl_setopt($ch, curlopt_postfields, $xml_data);
$response = curl_exec($ch);
if(curl_errno($ch))
{
print curl_error($ch);
}
curl_close($ch);
方法二,使用fsockopen:
复制代码 代码如下:
$fp = fsockopen($server_ip, 80);
fputs($fp, "post $path http/1.0\r\n");
fputs($fp, "host: $server\r\n");
fputs($fp, "content-type: text/xml\r\n");
fputs($fp, "content-length: $contentlength\r\n");
fputs($fp, "connection: close\r\n");
fputs($fp, "\r\n"); // all headers sent
fputs($fp, $xml_data);
$result = '';
while (!feof($fp)) {
$result .= fgets($fp, 128);
}
return $result;
fputs($fp, "post $path http/1.0\r\n");
fputs($fp, "host: $server\r\n");
fputs($fp, "content-type: text/xml\r\n");
fputs($fp, "content-length: $contentlength\r\n");
fputs($fp, "connection: close\r\n");
fputs($fp, "\r\n"); // all headers sent
fputs($fp, $xml_data);
$result = '';
while (!feof($fp)) {
$result .= fgets($fp, 128);
}
return $result;
ps:这里再为大家提供几款关于xml操作的在线工具供大家参考使用:
在线xml/json互相转换工具:
在线格式化xml/在线压缩xml:
xml在线压缩/格式化工具:
希望本文所述对大家的php程序设计有所帮助。