simplexml_load_string 解析xml
<?php
//simplexml_load_string 解析两种类型的xml
$res='<?xml version="1.0" encoding="UTF-8"?>
<SYNCPacket>
<mor><cpid>010001000249</cpid><mid>1009011719781282</mid><cpmid>1411957176</cpmid><mobile>13882524228</mobile><port>0096</port><msg>DELIVRD</msg><area>四川</area><city>遂宁</city><type>4</type><channel>1</channel><reserved></reserved></mor>
<mor><cpid>010001000249</cpid><mid>1009011719781301</mid><cpmid>1411957175</cpmid><mobile>18719295258</mobile><port>0096</port><msg>DELIVRD</msg><area>广东</area><city>阳江</city><type>4</type><channel>1</channel><reserved></reserved></mor>
</SYNCPacket>';
$reStat=simplexml_load_string($res);
foreach ($reStat->children() as $value) {
$arr['restatus']=trim($value->msg);
$arr['mobile']=trim($value->mobile);
$arr['taskid']=trim($value->cpmid) ;
$reply_arr[]=$arr;
}
print_r($reply_arr);
$re='<?xml version="1.0" encoding="UTF-8"?>
<SYNCPacket>
<count>200</count>
<result>0</result>
<report>
<mor><cpid>010001000249</cpid><mid>1009011719781282</mid><cpmid>1411957176</cpmid><mobile>13882524228</mobile><port>0096</port><msg>DELIVRD</msg><area>四川</area><city>遂宁</city><type>4</type><channel>1</channel><reserved></reserved></mor>
<mor><cpid>010001000249</cpid><mid>1009011719781301</mid><cpmid>1411957175</cpmid><mobile>18719295258</mobile><port>0096</port><msg>DELIVRD</msg><area>广东</area><city>阳江</city><type>4</type><channel>1</channel><reserved></reserved></mor>
</report>
</SYNCPacket>';
$reStat=simplexml_load_string($re);
foreach ($reStat->report->mor as $value) {
$arr['restatus']=trim($value->msg);
$arr['mobile']=trim($value->mobile);
$arr['taskid']=trim($value->cpmid) ;
$reply_arr[]=$arr;
}
print_r($reply_arr);
$xml='<xml name="sendBatch" result="1">
<Item cid="333" sid="333" msgid="111" total="1" price="0.10" remain="170.040"/>
<Item cid="444" sid="444" msgid="222" total="1" price="0.10" remain="169.940"/>
</xml>';
$re=simplexml_load_string(utf8_encode($xml));
if($re['result']==1)
{
foreach ($re->Item as $item)
{
$stat['msgid'] =trim((string)$item['msgid']);
$stat['total']=trim((string)$item['total']);
$stat['price']=trim((string)$item['price']);
$stat['remain']=trim((string)$item['remain']);
$stat_arr[]=$stat;
}
print_r($stat_arr);
}
?>
simplexml_load_string 解析xml的更多相关文章
- 关于php用simplexml_load_string解析xml出现乱码的小结
最近在做项目时需要通过xml接口读取合作伙伴数据到数据库,在xml解析环节出现有些特殊中文字符乱码的现象.后采取下面的办法终于解决. 1.curl 抓取过来的字符是unicode编码,需要先转换为ut ...
- PHP将解析xml变为数组方法
最近想要做一个插件机制,需要用到xml,在解析xml时候需要转换为数组,特意记录一个此种解析方式 xml文件 <?xml version="1.0" encoding=&qu ...
- PHP解析xml
<?xml version="1.0" encoding="UTF-8"?> <ZIP_result> <result name= ...
- php 解析xml
解析xml,返回一个对象. $obj = simplexml_load_string($XML, 'SimpleXMLElement', LIBXML_NOCDATA); 查看结果var_dump($ ...
- php解析xml的几种方式
php提供几种解析xml的类或方法,包括:Xml parser. SimpleXML,.XMLReader,.DOMDocument. XML Expat Parser: XML Parser使用Ex ...
- PHP解析xml的方法
PHP解析xml的方法<pre><?php /** XML 文件分析类 * Date: 2013-02-01 * Author: fdipzone * Ver: 1.0 * * fu ...
- Android 解析XML文件和生成XML文件
解析XML文件 public static void initXML(Context context) { //can't create in /data/media/0 because permis ...
- Android之解析XML
1.XML:可扩展标记语言. 可扩展标记语言是一种很像超文本标记语言的标记语言. 它的设计宗旨是传输数据,而不是显示数据. 它的标记没有被预定义.需要自行定义标签. 它被设计为具有自我描述性. 是W3 ...
- Android之Pull解析XML
一.Pull解析方法介绍 除了可以使用SAX和DOM解析XML文件,也可以使用Android内置的Pull解析器解析XML文件.Pull解析器的运行方式与SAX解析器相似.它也是事件触发的.Pull解 ...
随机推荐
- Access、Hybrid和Trunk
以太网端口有三种链路类型:Access.Hybrid和Trunk.Access类型的端口只能属于1个VLAN,一般用于连接计算机的端口:Trunk类型的端口可以属于多个VLAN,可以接收和发送多个VL ...
- 会话状态已创建一个会话 ID,但由于响应已被应用程序刷新而无法保存它
解决方法是新建 全局应用程序类 Global.asax 在 Session_Start 函数中 添加 string sessionId = Session.SessionID; protected v ...
- 30款最好的 Bootstrap 3.0 免费主题和模板
Twitter Bootstrap 框架已经广为人知,用于加快网站,应用程序或主题的界面开发,并被公认为是迄今对于 Web 开发的最有实质性帮助的工具之一.在此之前的,各种各样的界面库伴随着高昂的维护 ...
- Winform DataGridView控件添加行号
有很多种方法,这里介绍三种: A: 控件的RowStateChanged事件中添加,RowStateChanged事件是在行的状态更改(例如,失去或获得输入焦点)时发生的事件: e.Row.Hea ...
- C++STL内存管理方法(g++版)
STL作为C++的经典作品,一直备受人们关注.本文主要介绍STL的内存管理策略. 早期的STL内存管理 第一次接触STL源码是看侯捷先生的<STL源码剖析>,此书通俗易懂,剖析透彻,是极佳 ...
- select 嵌套
1.查询“001”课程比“002”课程成绩高的所有学生的学号: select a.S# from (select s#,score from SC where C#=’001′) a,(select ...
- Python 操作FTP
import sys, os, ftplib, socket CONST_HOST = "FTP服务器地址" CONST_USERNAME = "FTP用户名" ...
- PostgreSQL9.2安装和配置指南
本文只介绍PostgreSQL9.2在centos上的安装和配置过程 1.执行yum 命令安装PostgreSQL yum install postgresql-server 2.初始化Postgre ...
- SVN-修改已提交的日志
前提:服务器是Windows下的VisualSVN Server 1.在库的属性页面的Hooks选项卡下找到Pre-revision property change hook,2.双击修改其内容,具体 ...
- cell嵌套UIWebView遇到的几个问题
一.防止死循环问题 方法一:使用动画块 [self.myTableView beginUpdates];[self.myTableView endUpdates]; 在下面的代 ...