当前位置:首页 > 日记 > 正文

PHP数组和XML之间的相互转换

PHP数组和XML之间的相互转换
在发展中,我们经常会遇到阵列和XML之间进行相互转换,特别是当处理常常用于界面开发,如其他客户后一个XML格式的数据到服务器,服务器程序负责接收和分析,需要有一个数据表中的数据以XML格式的第三方应用等。

在这篇文章中,我们将简要介绍如何使用PHP来处理数组和XML之间的相互转换。

源代码下载:PHP数组与XML之间的转换

PHP将数组转换为XML

PHP可以将数组转换成XML格式。简单的方法是遍历数组,然后将数组的关键字值转换为XML节点,然后直接输出回声,例如:

功能arraytoxml($ ARR){
= $;
foreach(ARR美元美元美元关键= > Val){
如果(is_array($ Val)){
为XML。= 。ArrayToXml(美元值)。;
其他{ }
为XML。= 美元价值;
}
}
$;
返回xml;
}
我测试它,这是最简单、快速、支持的数组,而中文不会编码。

另一种方法是使用DOMDocument生成XML结构:

功能arraytoxml($ ARR,DOM = 0美元美元,项目= 0){
如果(!$){
$ DOM =新DOMDocument(1 );
}
如果(!$项目){
项目=美元美元DOM -> createElement(根);
DOM美元-> appendChild($项);
}
foreach(ARR美元美元美元关键= > Val){
$itemx = $dom->createElement (is_string ($key) $key: item);
$项-> appendChild($ itemx);
如果(!is_array($ Val)){
文本=美元美元DOM -> createTextNode(美元值);
itemx美元-> appendChild($文本);

{ }人
ArrayToXml(美元价值,美元美元的DOM,itemx);
}
}
返回的DOM -> savexml();
}
它还可以将数组转换成XML,支持多维数组,生成的XML中文不会编码。

PHP将XML转换为数组

做界面开发中经常会遇到别人向你是XML格式的数据,微信,支付宝的公共接口,其接口如发送消息通信的XML格式,所以我们可以找到一种方式来获得XML数据,然后将其转换成一个数组。

假设我们得到像这样的xml:
月光下的ABCD

一万三千零二
一千二百

一千八百二十九
2016-06-01

通过simplexml_load_string读取XML数据解析(),然后把它转化为JSON格式,然后将其转换成一个数组。

功能xmltoarray($ XML){

没有外部实体XML

libxml_disable_entity_loader(真的);

xmlstring = simplexml_load_string美元($ XML,'simplexmlelement ',libxml_nocdata);

val = json_decode(json_encode美元(美元xmlstring),真的);

返回$ $;

}
下面的结果可以通过调用xmltoarray获得():

当我们得到数组时,我们可以用多种方式处理数据。
以上是本文的全部内容,希望能对您有所帮助,希望大家多多支持。

相关文章

制作陶瓷质地的皮肤和诱人的皮肤

制作陶瓷质地的皮肤和诱人的皮肤

质地,诱人,电脑软件,如何使照片的美丽有白瓷皮肤,这里有一个皮肤磨削技术为您。几个步骤可以使你所拍摄的美丽焕发。 图1 1、打开一张照片,首先是要穿上皮肤。有很多方法可以擦皮肤。你可以自由发挥。总之,抛光效果越好,皮肤毛孔的细节就不应…

区别Javascript和返回false时使用foreach

区别Javascript和返回false时使用foreach

遍历数组,区别,电脑软件,Javascript,foreach,原生js使用foreach()遍历数组使用jQuery()(),每个之间返回false的差异: 1,使用每个()遍历数组a,如下所示: var a = { 20,21,22,23,24 }; 每一个(函数,索引,缬氨酸){ console.log('index = +指数); 如果(索引= 2){ 返回…

PS图象处理软件是如何处理一个重载

PS图象处理软件是如何处理一个重载

重载,图象,如何处理,处理软件,入门教程,PS图象处理软件软件运行大量的计算机内存,所以有时它会提醒你,你失去记忆。这里有一点关于PS图象处理软件如何处理存储太多。我希望你能得到一些结果。 PS图象处理软件占据了太多记忆的方式 当我们使…

mysql必须知道将是阅读笔记第第七

mysql必须知道将是阅读笔记第第七

数据过滤,将是,第七章,笔记,电脑软件,mysql简介 MySQL是一个开放源代码的关系数据库管理系统(RDBMS)。MySQL数据库系统使用最常用的数据库管理语言——结构化查询语言(SQL)进行数据库管理。 计算顺序: 其中可以包含任意数量的和(或)允许两者进行…

12Excel应用技巧

12Excel应用技巧

应用技巧,电脑软件,Excel,一个用excel计算结果的数据列,你可以在下一列显示它的每一步计算后,来平衡银行账户的变化是绝对简单直观的跟踪。 假设C2包含原账户余额,A3 B3是收入,支出,和C3单元输入公式=总和(C2,a3-b3),可以得到这一步的结果。当你进…

巧妙地输入不知道如何进入的单词

巧妙地输入不知道如何进入的单词

输入,单词,巧妙地,电脑软件,我们需要输入一个文本或其他奇怪的语言,我们不知道如何阅读。无论是多么奇怪的字符,我们可以用眉目传情的云输入法的巧妙运用,我们可以顺利进入它。 目前,眉目传情已加入在线输入法在Gmail和其他服务。通过这个所谓…

PS图象处理软件创造了美时装杂志的

PS图象处理软件创造了美时装杂志的

图象,处理软件,封面,时装,创造了,1,首先,原来的皮肤很好。这里我们不需要穿皮肤护理。为了提高照片的质量,我们使用液化工具(Ctrl + Shift + x)来调整人物的脸,使脸和手指变细。 2、对照片滤镜图层属性的实现,可以使画面更软。加照片滤镜发现画面…

Dreamweaver如何添加背景音乐DW来

Dreamweaver如何添加背景音乐DW来

背景音乐,声音文件,电脑软件,Dreamweaver,DW,如何在Dreamweaver中添加声音文件 1。同样的,我们需要你打开你的Dreamweaver工具。打开之后,我们构建一个新的HTML文档。 2。把它保存在你知道的地方 3,将行为面板添加到新文档的快捷键Shift + F4…

在Ubuntu14.04下安装mysql

在Ubuntu14.04下安装mysql

安装,电脑软件,mysql,1、如果你不运行命令更新开源终端窗口的列表,直接安装MySQL,会有几个包不能下载,你可以容易getupdate ------错误提示,导致安装失败。 2。安装MySQL 打开一个终端窗口,输入sudo apt-get安装MySQL servermysql 客户 进入Y在…

WPS2009窗体实现不间断输入数据

WPS2009窗体实现不间断输入数据

输入,数据,窗体,不间断,电脑软件,当你输入WPS 2009表格数据,你通常使用右光标键或回车键切换细胞,但是当你进入每一行或列的一端,右光标键或回车键将不起作用。这个时候你需要用鼠标定位到下一行或细胞下一列。事实上,我们可以实现不间断的输入…

Excel2007细胞交换技术

Excel2007细胞交换技术

交换技术,细胞,电脑软件,在Excel单元格中输入的数据都只有一行,并且有两种方法可以改变单元格中的输入数据。 首先,当你输入一个单元格的数据,只需按下ALT + enter组合键可以在单元格的光标直接改变。 其次,选择需要包裹在开始选项卡单击细胞…

PS图象处理软件剑和仙女的签名图像

PS图象处理软件剑和仙女的签名图像

图像,图象,仙女,处理软件,电脑软件,源材料uff1a 1。设置新层,分辨率设置为700×280。 2,拖动到材质1中,放置位置,单击Ctrl + U,调整颜色饱和度。 3、拖动材料A、B。材料中的1个墨圈左,用橡皮擦的位置小心地擦墨在这个圆外,黑色的记号刚好挡住油…