• XML作用


    什么是xml?

    xml指可扩展标记语言。

    xml被设计用来存储数据,不显示数据。

    XML 需要自行定义标签,且标签名称具有自我描述性。
    XML 是 W3C 推荐的数据传输存放标准。

    XML数据格式主要的用途又有哪些?

    程序之间的数据传输通讯 程序之间的数据传输通讯
    PHP语言 <- 快递100 <- Java语言
    配置文件 配置文件config.xml
    config.xml -> php语言、java语言、Python语言
    存储数据,充当小型数据库 存储数据,充当小型数据库
    data.xml
    规范数据格式 规范数据格式,是数据具有结构性,易读易处理 是数据具有结构性,易读易处理

    XML和HTML的区别: 的区别:
    1:html标签不能自定义,XML只能自定义标签;
    2:html语法要求不严格,xml对于语法的要求非常严格,标签必须是闭合的;
    3:XML 被设计用来传输和存储数据,其焦点是数据内容。
    HTML 被设计用来显示数据,其焦点是数据的外观呈现。

    xml的基本语法:

    XML 的语法规则很简单,且很有逻辑。

    XML 文档必须有根元素 文档必须有根元素
    根元素是所有其他元素的父元素;

    <root>
      <child>
        <subchild>.....</subchild>
      </child>
    </root>

    如上代码,root就是根元素;

    XML 声明 声明
    <?xml version="1.0" encoding="utf-8"?>
    声明文件是可选部分,如果存在需要放在文档的第一行;
    version :版本号,代表XML使用的版本号
    encoding :编码格式,默认UTF-8
    所谓的文档声明就是告诉解析器当前文档格式、版本号以及编码格式。
    1.所有的 所有的 XML 元素都必须是成对闭合标签 元素都必须是成对闭合标签

    2.非闭合标签是非法的,解析器将报错,不无正常解析;

    3.XML 标签对大小写敏感 标签对大小写敏感。

    4.XML标签不允许有交叉嵌套 标签不允许有交叉嵌套
    5.XML标签名不建议使用特殊字符,尽量只用数字字母下划线 标签名不建议使用特殊字符,尽量只用数字字母下划线

    6.XML 中的注释 中的注释
    7.在 XML 中编写注释的语法与 HTML 的语法一致。

    实体引用 实体引用 & 特殊字符 特殊字符
    在 XML 中,一些字符拥有特殊的意义。
    如果您把字符 "<" 放在 XML 元素中,会发生错误,这是因为解析器会把它当作新元素的开始。

    &lt来代替 "<" 字符:

    在 XML 中,有 5 个预定义的实体引用:

    &lt; <
    &gt; >
    &amp; &
    &apos; '
    &quot "

    xml元素属性

    XML 元素中,也可以随意添加一个或多个属性,但是:
    属性值一定要用引号(单引号或双引号)引起来
    属性名称的命名规范与元素的命名规范相同
    元素中的属性是不允许重复的

    其实,属性也是用来存储数据信息的,
    没有什么规矩可以告诉我们什么时候该使用属性,而什么时候该使用元素。
    但实际开发经验是 在HTML中,属性用起来很便利,而在 XML 中,应该尽量避免使用属性。
    因为:
    一个属性不能包含多个值(元素可以)
    属性值不能是结构化数据(元素可以)
    属性不容易扩展(为未来的变化)
    属性难以阅读和维护。
    将数据放在属性中和放在子元素中,目的都是为了传输数据,而子元素更加容易被解析;

    CDATA:

    在浏览器中运行以上代码,会报错,因为数据中有很多特殊字符,
    我们可以使用实体字符替换,但是,数据量太大,导致修改繁琐且极度困难;
    当我们遇到大量特殊字符时,可以使用CDATA将数据包裹;

    例如:

    <?xml version="1.0" encoding="UTF-8"?>
    <strory>
        <title>这是一个伤心的故事</title>
        <d>震惊!!!著名数学家尼古拉斯赵四,却难解小学考题</d>
        <![CDATA[ 要存放的数据 ]]>
        <con><![CDATA[小学进博士考题1:已知 c<4,d>5,问:c和d那个更好看? ]]> </con>
    </strory>

    对于内容比较少的情况,我们可以使用实体引用对特殊字符进行直接替换操作。
    对于内容比较多的情况,如果文章描述、文章内容等等建议采用CDATA区段。

    PHP解析xml文档:

    ML是一种数据传输格式,当PHP接收到的数据就是一段XML的时候,PHP提供了一个非常非常强大的类库,SimpleXML类库,专门用于实现对XML文档的解析操作。

    XML 解析原理:

    ① 读取XML文档到内存;
    ② 形成DOM树结构;
    ③ 生成SimpleXML对象。

    读取解析成对象:

    simplexml_load_file('xml_path')方法:

    读取节点的属性:

    attributes()方法获取节点属性

    使用 使用SimpleXML增加节点:

    //创建添加子节点

    addChild('xxx','123'); 第二个属性可以写节点值

    //创建添加子节点

    addAttribute('xx');

    asXML('xx.xml');//保存数据进XML文件,没有文件,则创建;

    ~~~~~~~~~~~~~结

  • 相关阅读:
    Apache Shiro 使用手册(二)Shiro 认证
    jdk 环境变量
    IDEA 相关整理
    mysql 相关命令
    hbase 迁库移库步骤
    Linux 常用指令整理
    springboot aop + logback + 统一异常处理 打印日志
    查看jar包的jdk版本
    maven 将jar包推送到自己本机的maven库
    jar包内的文件导出的注意点
  • 原文地址:https://www.cnblogs.com/bjphp/p/8598658.html
Copyright © 2020-2023  润新知