• 使用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

  • 相关阅读:
    hdu 1251 字典树模板题 ---多串 查找单词出现次数
    一个极其简洁的Python网页抓取程序,自己主动从雅虎財经抓取股票数据
    JSONObject与JSONArray的使用
    关于DPM(Deformable Part Model)算法中模型结构的解释
    fullcalendar日历控件知识点集合
    android--自己定义ProgressDialog显示位置(其他Dialog子类都能够设置)
    最简单的Java框架
    java final keyword
    IBinder对象在进程间传递的形式(一)
    windows的定时任务设置
  • 原文地址:https://www.cnblogs.com/lbnnbs/p/3783322.html
Copyright © 2020-2023  润新知