php通过curl方式发送接受xml数据

目录

1、php通过curl方式发送xml数据

2、php通过file_get_contents接受curl方式发送xml数据


1、php通过curl方式发送xml数据
php 复制代码
<?php
function sendXmlData($url, $xmlData) {
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_POST, true);
    curl_setopt($ch, CURLOPT_POSTFIELDS, $xmlData);
    curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: text/xml'));
    $response = curl_exec($ch);
    curl_close($ch);
    return $response;
}
// 使用示例
$xmlData = '<root><name>John</name><age>25</age></root>';
$url = 'http://localhost/test22.php';
$response = sendXmlData($url, $xmlData);
// 处理响应
echo $response;

发送XML数据的函数名为sendXmlData,它接受两个参数:$url是目标服务器的URL,$xmlData是要发送的XML数据。函数内部使用curl函数发送HTTP POST请求,并返回服务器的响应。您可以直接调用sendXmlData函数来发送XML数据并处理响应结果。

2、php通过file_get_contents接受curl方式发送xml数据
php 复制代码
<?php

function receiveXmlData() {
    $xmlData = file_get_contents('php://input');
    // 解析XML数据
    $xml = simplexml_load_string($xmlData);
    // 处理XML数据
    // 例如,获取根元素的值
    $name = $xml->name;
    $age = $xml->age;
    // 返回处理结果
    $response = "Received XML Data:\nName: $name\nAge: $age";
    return $response;
}
// 使用示例
$response = receiveXmlData();
echo $response;

函数receiveXmlData从输入流(php://input)中获取接收到的XML数据,并使用simplexml_load_string函数将其解析为可操作的XML对象。您可以根据需要进一步处理XML数据,并创建一个包含您要返回的响应的字符串。最后,可以通过调用receiveXmlData函数并将结果输出来查看处理结果

结果:

相关推荐
北漂Zachary8 分钟前
Laravel 6.x:高效开发与云原生的完美结合
云原生·php·laravel
北漂Zachary23 分钟前
Laravel4.x核心特性全解析
云原生·架构·php·laravel
zjeweler42 分钟前
“网安+护网”终极300多问题面试笔记-2共3-计算机网络相关 - 好淘云
笔记·计算机网络·web安全·面试·职场和发展·护网行动·护网面试
AnalogElectronic1 小时前
PHP学习02,PHP + jQuery + HTML + MySQL+nginx 做一个多用户云笔记项目
学习·php·jquery
万添裁1 小时前
第二次课程笔记
笔记
鱼鳞_1 小时前
Java学习笔记_Day30(File)
笔记·学习
JSON_L1 小时前
Fastadmin增加用户活跃统计
php·fastadmin
-许平安-1 小时前
MCP项目笔记十二(RAG-MCP)
c++·笔记·llm·rag·mcp
talen_hx2961 小时前
emqx的Keep alive
java·笔记·学习
雾岛听蓝2 小时前
Qt开发核心笔记:从HelloWorld到对象树内存管理与坐标体系详解
开发语言·经验分享·笔记·qt