cURL模拟POST方法提交XML数据并解析

php编程中会用到xml格式传送数据,这里演示下php以post形式发送xml,服务器接收,并解析xml的过程!

post_xml.php源码:

 1 <?php
 2     header("Content-Type:text/html; charset=utf-8");
 3     //检测是否支持cURL
 4     if(!extension_loaded(‘curl‘))
 5     {
 6         trigger_error(‘对不起,请开启curl功能模块!‘, E_USER_ERROR);
 7     }
 8     //构造xml
 9     $xmldata = <<<xml
10 <?xml version=‘1.0‘ encoding=‘UTF-8‘?>
11     <group>
12         <name>张三</name>
13         <age>22</age>
14     </group>
15 xml;
16     //初始化curl会话
17     $ch = curl_init();
18     //设置url
19     curl_setopt($ch, CURLOPT_URL, ‘http://localhost/test/deal_xml.php‘);
20     //设置发送方式
21     curl_setopt($ch, CURLOPT_POST, true);
22     //设置发送的数据
23     curl_setopt($ch, CURLOPT_POSTFIELDS, $xmldata);
24     //抓取URL并把它传递给浏览器
25     curl_exec($ch);
26     //关闭cURL资源,并且释放系统资源
27     curl_close($ch);
28 ?>
注:构造xml时一定要注意格式正确,不能有空格等deal_xml.php源码:
 1 <?php
 2     //接收传送的数据
 3     $fileContent = file_get_contents("php://input");
 4     //转换为simplexml对象
 5     $xmlResult = simplexml_load_string($fileContent);
 6     //foreach遍历循环
 7     foreach($xmlResult->children() as $childItem)
 8     {
 9         echo $childItem->getName() . ‘->‘ . $childItem . ‘<br/>‘;    //输出xml节点名称和值
10     }
11 ?>

结果:

name->张三
age->22

 
时间: 2024-10-14 13:46:44

cURL模拟POST方法提交XML数据并解析的相关文章

php curl模拟post请求提交数据

最近在做校园图书馆图书信息的采集程序,既然是图书馆图书的采集,肯定有提交搜索的页面,无非是post提交,让我想到了curl模拟提交,首先通过firebug进行抓包查询下post提交后的格式如下: txtWxlx=CN&hidWxlx=spanCNLx&txtPY=HZ&txtTm=%D2%F4%C0%D6&txtLx=%25&txtSearchType=1&nMaxCount=100&nSetPageSize=10&cSortFld=%D5%

php使用curl提交xml数据

$str_callback_url="xxxx.com/api.php";$str_callback_url="xml数据";$ch = curl_init();curl_setopt($ch, CURLOPT_URL, $str_callback_url);curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);curl_setopt($ch,

php curl模拟post请求提交数据样例总结

在php中要模拟post请求数据提交我们会使用到curl函数,以下我来给大家举几个curl模拟post请求提交数据样例有须要的朋友可參考參考.注意:curl函数在php中默认是不被支持的,假设须要使用curl函数我们需在改一改 在php中要模拟post请求数据提交我们会使用到curl函数,以下我来给大家举几个curl模拟post请求提交数据样例有须要的朋友可參考參考. 注意:curl函数在php中默认是不被支持的,假设须要使用curl函数我们需在改一改你的php.ini文件的设置,找到php_c

php curl模拟post请求提交数据例子总结

php curl模拟post请求提交数据例子总结 [导读] 在php中要模拟post请求数据提交我们会使用到curl函数,下面我来给大家举几个curl模拟post请求提交数据例子有需要的朋友可参考参考.注意:curl函数在php中默认是不被支持的,如果需要使用curl函数我们需在改一改 在php中要模拟post请求数据提交我们会使用到curl函数,下面我来给大家举几个curl模拟post请求提交数据例子有需要的朋友可参考参考. 注意:curl函数在php中默认是不被支持的,如果需要使用curl函

iOS开发网络篇—XML数据的解析

iOS开发网络篇—XML数据的解析 iOS开发网络篇—XML介绍 一.XML简单介绍 XML:全称是Extensible Markup Language,译作“可扩展标记语言” 跟JSON一样,也是常用的一种用于交互的数据格式,一般也叫XML文档(XML Document) XML举例 <videos> <video name="小黄人 第01部" length="30" /> <video name="小黄人 第02部&qu

PHP Curl模拟登录并抓取数据

使用PHP的Curl扩展库可以模拟实现登录,并抓取一些需要用户账号登录以后才能查看的数据.具体实现的流程如下(个人总结): 1. 首先需要对相应的登录页面的html源代码进行分析,获得一些必要的信息: (1)登录页面的地址: (2)验证码的地址: (3)登录表单需要提交的各个字段的名称和提交方式: (4)登录表单提交的地址: (5)另外要需要知道要抓取的数据所在的地址. 2. 获取cookie并存储(针对使用cookie文件的网站): $login_url = 'http://www.xxxxx

php curl模拟 get,post提交,上传文件,下载文件

CURL学习: 文章目录 get,post提交. 上传文件 模拟get,post提交 get提交,直接写到url上. $ch=curl_init();//初始化一个CURL对话: curl_setopt($ch, CURLOPT_URL, "http://localhost/wish/test/file2.php?t=1&p=2"); curl_setopt($ch, CURLOPT_HEADER, 0); // 抓取URL并把它传递给浏览器 curl_exec($ch); /

Jquery-ajax()方法提交json数据

1.ajax()提交json数据代码 var strJson = getStrPayJson(); $.ajax({ type: "POST", url: "/usercenter/paycoupon", contentType: "application/json", dataType: "json", data: JSON.stringify({ "payUsers": strJson }), succ

XML数据的解析

相比于JSON数据解析而言,XML数据解析可能会让更多的童鞋感觉到吃力,对我来说,同样认为JSON数据好像让人感觉比较友好,不过对于程序开发者来说,无非就是这两种数据解析占比较大的部分,其中JSON数据占80%,而XML只占到20%,虽然大部分还是JSON的天下,但我们也不能掉以轻心,不能忽略这20%的XML,听完今天老师的课程,我做了如下总结,更多总结见我个人博客. 下面给大家看两个图片,这两个图片就是传说中的JSON和XML数据,要对他们进行解析,估计很多同仁都像我一样,第一眼看上去,哎呀妈