XML教学视频(黑马程序员精讲 XML 知识!)笔记

news/2024/7/8 2:48:33 标签: xml, 笔记

第一章XML概述

1.1认识XML

XML数据格式:

不是html但又和html有点相似

XML数据格式最主要的功能就是数据传输(一个服务器到另一个服务器,一个网站到另一个网站)配置文件、储存数据当做小型数据可使用、规范数据格式让数据具有结构性易读易处理

1.2什么是xml

定义:指的是可扩展性标记语言;

XML被发明的目的是传输和存储数据,而不是展示数据

XML的标签必须自定义,但是在写标签名的时候一定有含义;

XML是W3C推举的数据传输格式;

Q:如何自己写一个XML?

Q:XML和HTML有什么不一样?

  1. HTML不能自定义,XML标签必须自定义
  2. HTML语法要求不严格,XML语法要求及其严格,必须是成对标签
  3. XML用来传输和存储,HTML用来展示数据;

第二章 XML基本语法

2.1语法规则

XML必须有根结点;根结点是其他所有节点的父级节点

XML头声明不强制要求,可有可无,但是建议写

XML头声明 <版本号 文件编码>

所有XML元素都必须是成对标签;

标签大小写敏感,区分大小写

标签不能交叉编写

注释和HTML一样

特殊字符使用实体转义;

2.2元素属性

属性规则:

一个标签可以有多个属性,属性的值必须用引号(单引号、双引号)引起来;

命名规则:数字字母下划线,数字不能开头

属性是表示标签自身的一些额外信息;

XML属性就是鸡肋(是指无用弃之可惜);

还有在解析XML数据时,属性会带来额外的解析代码(多了一步,比较麻烦)

2.3CDATA

注意:特殊字符较少时,使用实体替换;较多时使用CDATA;CDATA必须大写;

第三章 使用PHP解析XML文档

XML是一种数据传输格式,当PHP接收到的数据是一段XML时,PHP怎么处理XML数据呢?

在PHP5版本以后。提供了类库,SimpleXML类库,专门用于实现对XML文档的解析操作

3.1XML解析原理

PHP解析XML分为3步:

  1. 读取XML文档到内存;
  2. 形成DOM树;
  3. 由DOM树生成对象并返回

3.2SimpleXML类库

php解析xml返回对象的注释:

3.3遍历XML数据

不可缺少的:

foreach循环获取xml数据

for循环获取xml数据

3.4使用SimpleXML添加结点

不可缺少的:

对象中的addChild方法创建结点

添加man结点

对象中的addChild方法创建结点并给创建后的结点添加内容

给man标签添加子标签-name标签,age标签

将添加后的对象重新解析成xml文档,写入文件

添加的内容保存到xml文件里

3.5XM案例

获取到xml文件地址

直接接收xml内容(里面是string)而不是文件地址

使用方式:

打印输出内容:

完整案例:

Html部分(表单提交页面)

Php部分:

第四章 XPATH语言

4.1概述

XPath是一门专门用来查找XML数据内容的一门语言;

用来在XML文档中对元素及属性进行遍历;

4.2使用及语法

使用绝对路径查找:

使用相对路径查找:

(叫name下的所有内容)

使用*匹配所有结点

条件查找


http://www.niftyadmin.cn/n/5136378.html

相关文章

Android多张图片rotation旋转角度叠加/重叠堆放

Android多张图片rotation旋转角度叠加/重叠堆放 <?xml version"1.0" encoding"utf-8"?> <RelativeLayout xmlns:android"http://schemas.android.com/apk/res/android"xmlns:app"http://schemas.android.com/apk/res-auto"…

结构体和联合体嵌套访问

在JSON项目中&#xff0c;使用了联合体和结构体之间的嵌套&#xff0c;但是在访问内部的联合体和结构体的时候出现了问题&#xff0c;这篇文章作为记录&#xff0c;也希望能帮助遇到相同问题的好伙伴。 struct lept_value {union {struct str{char *s;size_t len;};double n;}…

视频剪辑软件Corel VideoStudio Ultimate 会声会影2024中文旗舰版免费下载安装步骤

我喜欢视频剪辑软件Corel VideoStudio Ultimate 会声会影2024中文旗舰版&#xff0c;因为它使用起来很有趣。它很容易使用&#xff0c;但仍然给你很多功能和力量。VideoStudio让我与世界分享我的想法&#xff01;“这个产品的功能非常多&#xff0c;我几乎没有触及它的表面&…

《Effective Java》读书笔记(1-2章)

第一章 创建和销毁对象 1. 考虑用静态代替构造方法 想要获取一个类的实例&#xff0c;一种传统的方式是通过共有的构造器&#xff0c;当然还可以使用另一种技术&#xff1a;提供共有的静态工厂方法。 什么是静态工厂&#xff1f; public static Boolean valueOf(boolean b) …

Java中的三种I/O模型:BIO、NIO和AIO

I/O&#xff08;输入/输出&#xff09;操作是任何应用程序中必不可少的一部分&#xff0c;它涉及到与文件、网络或其他设备之间的数据传输。Java提供了几种不同的I/O模型&#xff0c;其中最常见的是AIO&#xff08;异步非阻塞I/O&#xff09;、BIO&#xff08;阻塞I/O&#xff…

滑动窗口限流算法实现一

固定算法 原理&#xff1a;固定算法是将时间线分隔成固定大小的时间窗口&#xff0c;每个窗口都会有个计数器&#xff0c;用来记录窗口时间范围内的请求总数&#xff0c;如果窗口的请求总数达到最大限定值&#xff0c;会认定流量超限。比如将窗口大小设为1分钟&#xff0c;每分…

【测试工具合集1】

&#x1f33f; 一、TestAppForlOS TestAppForlOS是一款运行在iOS系统上的测试应用程序。它可以用来测试iOS设备的硬件和软件性能&#xff0c;以及验证应用程序的兼容性和稳定性。该应用程序提供了多种测试工具&#xff0c;包括CPU、内存、存储器、网络等性能测试&#xff0c;同…

笔记检验(一):笔记检验概述

文章目录 一、 笔迹的概念及成分&#xff08;一&#xff09; 笔迹的概念&#xff08;二&#xff09; 笔迹的成分 二、 笔迹检验的概念、任务及作用&#xff08;一&#xff09; 笔迹检验的概念&#xff08;二&#xff09; 笔迹检验的任务&#xff08;三&#xff09; 笔记检验的作…