zoukankan      html  css  js  c++  java
  • 使用SimpleXML 解析xml

    最近搞解析XML搞的我是水深火热的,所以打算对PHP5解析XML做个学习小结。今天介绍下与PHP5捆绑在一起的SimpleXML扩展,这个用于可读写XML的新的API,让解析XML不再繁琐和困难,用起来就一个字“爽”。接下来我就告诉你有多爽。

    1.今天解析的XML文档格式如下:

    <?xml version="1.0" encoding="UTF-8"?>
    <!--
         Document   : test.xml
        Author     : 蘇哥拉笛
         Description:
            Purpose of the document follows.
    -->
    <root>
        <row id="1">
            <name>Jordan</name>
            <age>40</age>
            <email>jordan@gmail.com</email>
        </row> 
        <row id="2">
            <name>Yao</name>
            <age>27</age>
            <email>yaoming@yahoo.com.cn</email>
        </row>  
        <row id="3">
            <name>sugeladi</name>
            <age>22</age>
            <email>su@@@@@@ge</email>
        </row>
    </root>

    2.解析XML:

        解析XML并把它保存在一个变量中,使用SimpleXML只需要写一行即可完成:

       $xml=simplexml_load_file("test.xml")

    3.获取你想要标签的值:

        比如我想要拿到name标签中的值,你可以这样写:

       $name=$xml->row->name;

       之后echo $name,得到jordan。如果要得到全部的name标签的值,你可以这样:

       foreach($xml -> row as $row){

              echo "$row -> name<br>";

       }

       输出:Jordan

                     Yao

                     sugeladi

       看到这你发现乐趣了没?哈哈,你想要什么,只要有$xml这个对象,只有你熟悉XML文档的结构,那么取值是不是很方便的说,只要给出相应的节点标签名称,你就可以获取到你想要的值。那么接下来我们继续来玩玩XML解析。

    4.按索引访问相应的标签元素值

         如果XML结构良好,那么我们可以按索引访问元素,默认索引为0,比如现在我们要拿name是Jordan这项,我们可以这样写:

        $name=$xml -> row[0] -> name;

        echo $name;

        输出:Jordan

    5.查找元素的属性值:

         我们现在要取<row id="1">的id的值可以这样:

         foreach($xml -> row -> attributes() as $id){

             echo $id;

        }

       输出:1

  • 相关阅读:
    移动端网络优化
    性能优化之Java(Android)代码优化
    性能优化之布局优化
    性能优化之数据库优化
    Android性能调优
    Android性能检测--traceview工具各个参数的意思
    RDIFramework.NET ━ .NET高速信息系统开发框架钜献 V2.9 版本震撼发布
    【C++基金会 04】vector详细解释
    Chromium-Dev一些缩写
    怎么样CSDN Blog投机和增加流量?
  • 原文地址:https://www.cnblogs.com/lbnnbs/p/3783322.html
Copyright © 2011-2022 走看看