微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

PHP 将xml文件解析为数组

SimpleXML扩展在解析和操作XML文档时非常实用,本文将讨论如何使用PHP SimpleXML解析xml文件

首先,让我们看一下使用SimpleXML扩展将XML内容转换为数组所需遵循的步骤。

 

PHP解析xml文件需要使用到的函数

file_get_contents():

file_get_contents() 函数把整个xml文件读入一个字符串中

simplexml_load_string():

simplexml_load_string() 函数转换形式良好的 XML 字符串为 SimpleXMLElement 对象。

simplexml_load_file():

simplexml_load_file() 函数把 XML 文档载入对象中。如果失败,则返回 false。

json_encode():

json_encode函数主要用来将数组和对象,转换为json格式。

json_decode():

json_decode函数用于将json文本转换为相应的PHP数据结构.

 

PHP将xml文件解析为数组 - 示例

xml文件abc.xml如下:
<?xml version='1.0'?>
<userdb>
   <firstname name='Alex'>
      <symbol>AL</symbol>
      <code>A</code>
   </firstname>
      <firstname name='Sandra'>
         <symbol>SA</symbol>
         <code>S</code>
   </firstname>
</userdb>

PHP代码

<?PHP
// xml file path
   $path = "abc.xml";
   $xmlfile = file_get_contents($path);
   $new = simplexml_load_string($xmlfile);
   $jsonfile = json_encode($new);
   $myarray = json_decode($jsonfile, true);
   print_r($myarray);
?>

运行结果:

Array
(
   [firstname] => Array
       (
           [0] => Array
               (
                   [@attributes] => Array
                       (
                           [name] => Alex
                       )
                   [symbol] => AL
                   [code] => A
               )
           [1] => Array
               (
                   [@attributes] => Array
                       (
                           [name] => Sandra
                       )
                   [symbol] => SA
                   [code] => S
               )
       )
)

以上就是本文的全部内容,希望对大家的学习有所帮助。更多教程请访问码农之家

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。