博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
PHP利用 JSON 将XML转换为数组
阅读量:6259 次
发布时间:2019-06-22

本文共 1105 字,大约阅读时间需要 3 分钟。

在很多开发项目中,我们都会遇到将XML文件转换为数组使用,因此在本篇
中,UncleToo和大家一起学习

现在有一个uncletoo.xml的配置文件,格式如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<
h6
>Step 1: XML File</
h6
>
<?
xml 
version
=
'1.0'
?>
<
moleculedb
>
    
<
molecule 
name
=
'Benzine'
>
        
<
symbol
>ben</
symbol
>
        
<
code
>A</
code
>
    
</
molecule
>
    
<
molecule 
name
=
'Water'
>
        
<
symbol
>h2o</
symbol
>
        
<
code
>K</
code
>
    
</
molecule
>
<
molecule 
name
=
'Parvez'
>
        
<
symbol
>h2o</
symbol
>
        
<
code
>K</
code
>
    
</
molecule
>
</
moleculedb
>

1、读XML文件内容,并保存到字符串变量中

下面我们使用PHP自带的file_get_contents()函数将文件内容读取到一个字符串变量中:

$xmlfile = file_get_contents($path);

此时$xmlfile变量的值如下:

2、将字符串转换为对象

这一步我们将使用simplexml_load_string()函数,将上一步得到的字符串转换为对象(Object):

$ob= simplexml_load_string($xmlfile);

此时$ob的值如下:

3、将对象转换为JSON

上一步转换成对象后,现在,我们要将对象转换成格式字符串:

$json  = json_encode($ob);

此时$json变量的值如下:

4、解析JSON字符串

这也是最后一步了,我们需要将JSON格式的字符串转换为我们需要的数组:

$configData = json_decode($json, true);

现在$configData里存储的数据就是我么最后要得到的数组,如下:

完整转换代码:

1
2
3
4
5
6
<?php
$xmlfile 
file_get_contents
(
$path
);
$ob
= simplexml_load_string(
$xmlfile
);
$json  
= json_encode(
$ob
);
$configData 
= json_decode(
$json
, true);
?>


转载地址:http://ipasa.baihongyu.com/

你可能感兴趣的文章
VMware报错:"激活连接失败:No suitable device found for this connection."
查看>>
maven设置
查看>>
个人考场VIM配置
查看>>
adobe
查看>>
微信小程序中的分享事件
查看>>
HDU 6069 Counting Divisors【区间素筛】【经典题】【好题】
查看>>
使用HAXM为QEMU for Windows加速
查看>>
配置tomcat下war包可以自压缩
查看>>
idea中artifacts、facets、modules是什么意思?
查看>>
大数据下的Distinct Count(一):序
查看>>
android 打包
查看>>
FUCKED-BUG之临时对象的生死
查看>>
一句话开启XP_CMDSHELL
查看>>
【100题】第四十五题 雅虎面试两道题(矩阵判断、数组划分)
查看>>
MySQL基础知识
查看>>
HTML页面优化
查看>>
centos6下安装docker
查看>>
常见的算法PHP 版,自整理
查看>>
使用UITableView隐藏的复选功能
查看>>
自定义下拉菜单(按钮下面出现下拉菜单),失去焦点后,如何下拉菜单自动消失,以及弹出窗体位置一直变化问题...
查看>>