一个简单xml数据转换为数组的方法

本人用easywechat做微信回复图文,从数据库中拿到的数据直接是xml拼好的数据,但是框架只有自带的获取xml格式的语句,所有需要将xml数据中所需要的数据拿出来用来拼接。

搜了好多资料说的都很麻烦。ps:可能是我水平不够;-)

ok,废话不多说, 上代码:

// 以这个xml数据串为例
$xml = "<item><Title><![CDATA[亲爱的顾客:]]></Title><Content><![CDATA[]]></Content><Description><![CDATA[]]></Description><PicUrl><![CDATA[http://kantj.kxun.com/Uploads/Material/Manage/45c48cce2e2d7fbdea1afc51c7c6ad26/[email protected]_1400140887.jpg]]></PicUrl><Url><![CDATA[http://kantj.kxun.com/weixin.php/Webapp/entrance?merchantid=9]]></Url></item>","<item><Title><![CDATA[欢迎关注山姆之家~!]]></Title><Content><![CDATA[]]></Content><Description><![CDATA[]]></Description><PicUrl><![CDATA[http://kantj.kxun.com/Uploads/Material/Manage/45c48cce2e2d7fbdea1afc51c7c6ad26/[email protected]_1400138478.jpg]]></PicUrl><Url><![CDATA[]]></Url></item>";

// 该函数将xml数据转换为Simplement格式
// 第三个参数代表将将CDATA节点合并为TEXT节点,否则CDATA解析为空
$xmls = simplexml_load_string($xml, ‘SimpleXMLElement‘, LIBXML_NOCDATA);

//将该数据转换为数组
$arr = json_decode(json_encode($xmls), true);

var_dump($arr);

最后,你就能看到转换出的数组了O(∩_∩)O哈哈~

时间: 2024-10-19 07:38:14

一个简单xml数据转换为数组的方法的相关文章

分享一个解析XML成为php数组的方法

原文:分享一个解析XML成为php数组的方法 <?php /* * To change this template, choose Tools | Templates * and open the template in the editor. */ $xml = 'site_1.xml'; $myxml = simplexml_load_file($xml); // print_r($myxml); print_r(xmlToArray($myxml)); function xmlToArra

PHP将XML数据转换为数组

<?php $s=join(,file('httpapi.elong.comxmlv2.0hotelcn0132701501.xml')); $result = xml_to_array($s); print_r($result); /*函数*/ function xml_to_array($xml) { $array = (array)(simplexml_load_string($xml)); foreach ($array as $key=$item){ $array[$key] = st

C++ Daily 《4》----一个简单的 int to string 的方法

经常会在项目中用到 int to string, 之前一般用C语言的 sprintf, 发现C++ 中的 ostringstream 可以轻松完成这个任务. #include <iostream> #include <string> #include <sstream> using namespace std; int main(void) { ostringstream num; num << 123; string str = num.str(); co

使用VS2013将JSON/XML数据转换为对应的数据实体

VS2013中提供了将JSON数据转换为对应的数据实体类的功能,很大程度上提高开发效率,具体转换步骤如下 1.首先我们需要将需要转换的JSO数据[复制],例如下面这段json数据: { "name": "JSON中国", "url": "http://www.json.org.cn", "page": 88, "isNonProfit": true, "address"

asp.net html中table数据转换为数组传给后台

在html中如有table表格,进行填写.如果每个填写值都用juqery获取name属性进行获取值,之后再传输给后台这样比较麻烦. 有一个简单的方式就是利用jquery获取table的每一行,赋值到数组里面利用Ajax传输给后台. 1.html中table代码 <table class="table table-bordered physical_table"> <thead> <tr><th>姓名</th><th>

【Java面试题】17 如何把一个逗号分隔的字符串转换为数组? 关于String类中split方法的使用,超级详细!!!

split 方法:将一个字符串分割为子字符串,然后将结果作为字符串数组返回. stringObj.split([separator],[limit])参数:stringObj   必选项.要被分解的 String 对象或文字.该对象不会被 split 方法修改.separator 可选项.字符串或 正则表达式 对象,它标识了分隔字符串时使用的是一个还是多个字符.如果忽 略该选项,返回包含整个字符串的单一元素数组. limit可选项.该值用来限制返回数组中的元素个数. 说明:split 方法的结果

php最简单把xml转换成数组的方法

$xml= $this->getToken($url); $rs =simplexml_load_string (urldecode( $xml) ) ; $rs = json_decode( json_encode($rs) , true); json相关编码问题:http://www.nowamagic.net/php/php_JsonDecode.php

分享给大家一个简单的数据导出excel类

<?php /** * 生成excel文件操作 * * @author wesley wu * @date 2013.12.9 */ class Excel { private $limit = 10000; public function download($data, $fileName) { $fileName = $this->_charset($fileName); header("Content-Type: application/vnd.ms-excel; charse

简单说说随机打乱数组的方法

原文链接:http://www.gbtags.com/gb/share/5646.htm 把一个数组随机打乱这个需求来源可能就是“洗牌”,所以我们常常称之为洗牌问题.这个问题实现并不复杂,有不少方法可以完成.与其他算法不同,洗牌问题不仅追求速度,还要求“洗得足够开”.今天只想写篇短的,只分享两种比较有代码性的洗牌方法.至于这些方法能不能真正将数组随机打乱,我们下次再讲. 方法一,随机排序法: function shuffle(array) { array.sort(function() { re