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

news/2025/1/16 13:31:25/

第一章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.ppmy.cn/news/1187120.html

相关文章

人到中年应该怎么交朋友

听人劝、吃饱饭,奉劝各位小伙伴,不要订阅该文所属专栏。 作者:不渴望力量的哈士奇(哈哥),十余年工作经验, 跨域学习者,从事过全栈研发、产品经理等工作,现任研发部门 CTO 。荣誉:2022年度博客之星Top4、博客专家认证、全栈领域优质创作者、新星计划导师,“星荐官共赢计…

手写效果流式响应(langchain+fastapi+js)

这是一个前后端完整可用的小项目 后端是 Python 的 FastAPI 框架&#xff0c;调用 langchain 进行 openai 的模型对话。前端是纯html css javascript&#xff0c;没调用任何第三方库&#xff0c;方便集成到 Vue React 等现有前端项目。 聊天界面&#xff1a; 效果就是提问之…

2023年CCF中国开源大会“大模型时代的智能化软件工程新范式”分论坛成功举行...

2023年CCF中国开源大会“大模型时代的智能化软件工程新范式”分论坛于10月21日在湖南长沙成功举行。本次论坛聚焦大模型时代的智能化软件新生态以及相应的软件工程新范式&#xff0c;邀请了多位来自学术界和工业界的专家进行分享和交流&#xff0c;共设置了5个主题报告和1个Pan…

线性代数 第三章 向量

一、运算 加法、数乘、内积 施密特正交化 二、线性表出 概念&#xff1a;如果&#xff0c;则称可由线性表出&#xff08;k不要求不全为0&#xff09; 判定&#xff1a; 非齐次线性方程组有解无关&#xff0c;相关 如果两个向量组可以互相线性表出&#xff0c;则称这两个…

深度学习02-数据集格式转换

背景&#xff1a; 通常搜集完数据图片后&#xff0c;我们会用labelimg进行图片标注&#xff0c;比较高版本的labelimg支持的标注格式有三种&#xff0c;PascalVOC、YOLO、CreateML&#xff0c;标注的时候可以根据自己的算法模型数据集需求选择相应的格式&#xff0c;当然&…

回文日期-成绩统计-单词分析

回文日期 import os import sys# 请在此输入您的代码 import datetime time_input() yearint(time_[0:4]) mint(time_[4:6]) dayint(time_[6:])# 转成日期 datadatetime.date(year,m,day) # print(data) aTrue for i in range (89991231):datadatadatetime.timedelta(days1)d…

OpenCV官方教程中文版 —— Hough 直线变换

OpenCV官方教程中文版 —— Hough 直线变换 前言一、原理二、OpenCV 中的霍夫变换三、Probabilistic Hough Transform 前言 目标 • 理解霍夫变换的概念 • 学习如何在一张图片中检测直线 • 学习函数&#xff1a;cv2.HoughLines()&#xff0c;cv2.HoughLinesP() 一、原理…

Composition API的引入

目录 全局API的移除和替代 插件的改进 TypeScript支持的增强 优势 劣势 总结 Vue.js 3.x版本引入了Composition API&#xff0c;这是一个全新的API风格&#xff0c;旨在提高代码的可读性和重用性。Composition API使我们可以根据逻辑相关性组织代码&#xff0c;而不是按照…