美文网首页
XML数据的操作

XML数据的操作

作者: 老衲灬 | 来源:发表于2018-08-16 21:42 被阅读12次

1、XML的基本语法

<!-- 声明XML文件 注意:可以不声明,如果声明则要放在文档的第一行 -->
<?xml version="1.0" encoding="utf-8"?>
<!-- 
    1、必须有根标签
    2、标签名称可以自己定义,不建议使用特殊字符,建议使用字母数字下划线
    3、所有的标签都是成对的闭合标签
    4、标签对大小写敏感
 -->
<root>
    <student>
        <name>张三</name>
        <age>18</age>
    </student>
    <student>
        <name>李四</name>
        <age>20</age>
    </student>
</root>

2、php解析XML

①php解析XML文件或者字符串所使用的函数
//将XML文件解释成一个对象
$xml = simplexml_load_file("./test.xml");   //test.xml文件即XML基本语法中的示例代码
var_dump($xml);

//将XML字符串解释成一个对象
$strXML = "<root><student><name>张三</name><age>18</age></student><student><name>李四</name><age>20</age></student></root>";
$xml = simplexml_load_string($strXML);
var_dump($xml);
结果如下:
②通过foreach或者for循环获取XML中的值
//将XML文件解释成一个对象
$xml = simplexml_load_file("./test.xml");
//foreach遍历取出name
$names = "";
foreach($xml->student as $v){
    $names .= $v->name;
}
//echo $names;  //结果:张三李四

//for循环取出name
$names = "";
for($i=0;$i<count($xml->student);$i++){
    $names .= ($xml->student)[$i]->name;
}
echo $names;    //结果:张三李四

3、php函数解析XML的原理

XML在解析时一共要经历三个步骤:
①读取XML文档到内存;
②形成DOM树结构;

③生成SimpleXML对象。

4、php生成XML并返回给Ajax

直接构建字符串即可,示例:

//构建XML字符串
$strXML = "<root><student><name>张三</name><age>18</age></student><student><name>李四</name><age>20</age></student></root>";
//响应头声明文件类型
header("Content-Type:text/xml");
//返回数据
echo $strXML;

5、Ajax获取XMl数据

通过Ajax对象.responseXML接收服务器传来的XML数据,Js会将其解析为DOM树,所以,Js操作XML数据就和操作html节点的数据一样。

<script type="text/javascript"> 
    var xhr = new XMLHttpRequest();
    xhr.onreadystatechange = function(){
        if(xhr.readyState == 4){
            var xml = xhr.responseXML;
            //操作XML数据
            var name = xml.getElementsByTagName("name");
            var names = "";
            for(var i=0;i<name.length;i++){
                //注意:此处只能使用innerHTML,这里name对象并没有innerText属性
                names += name[i].innerHTML;
            }
            console.log(names); //结果:张三李四
        }
    }
    xhr.open("get","./test.php");
    xhr.send();
</script>

相关文章

  • XML数据的操作

    1、XML的基本语法 2、php解析XML ①php解析XML文件或者字符串所使用的函数 ②通过foreach或者...

  • PHP操作XML数据

    什么是XML XML是可扩展性标记语言 设计宗旨是为了传输数据 XML标签没有被预定义,需要自行定义 XML的用途...

  • AJAX

    个人理解: JavaScript通过异步的形式操作XML文档。 功能: 数据交互(获取数据,发送数据)。 特点: ...

  • Python数据分析和数据建模理论基本介绍

    1、数据分析基本的步骤 (1)数据收集和操作主要是对excel、json、xml、sql等数据进行操作。 (2)数...

  • XML存储,Pull解析

    XML是一种可扩展的标记语言,一般用来传输数据及少量数据存储,而非显示数据。 在Android中提供XML类来操作...

  • 架构设计----MVC初步认识

    目录 什么是MVC view ---- xml model ---- 存放数据和对于数据的操作的类 control...

  • XML解析(上)

    什么是XML解析? 所谓XML解析,就是读取以及操作XML文档中的数据。对于Java来说,主要有三种模式:DOM、...

  • 2018-02-10 记录python中的xml操作

    xml使用操作数据 读取xml字符串网上大多教程是从文本中读取,我这...

  • Android中XML数据的操作

    XML,即可扩展标记语言(Extensible Markup Language)非常适合万维网传输,提供统一方法来...

  • odoo V10中文参考手册(二:数据文件)

    结构 odoo通过xml文件来定义数据,xml文件内容由odoo标签包含的元素组成 核心操作 record 定义或...

网友评论

      本文标题:XML数据的操作

      本文链接:https://www.haomeiwen.com/subject/wucabftx.html