加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

xml基本概念总结

发布时间:2020-12-16 08:26:50 所属栏目:百科 来源:网络整理
导读:xml的重点主要是 1.特点 2.语法规范 3.解析与创建 4.DTD(文档类型定义) 【还有Schema 以后可以自行学习的,暂时还没有看】 DOMDocument 来解析 xml 步骤主要是,一步一步深入,思路明确,但是比较麻烦 1.得到面 $xml = new Document("1.0","utf-8"); $xml-l
xml的重点主要是 1.特点 2.语法规范 3.解析与创建 4.DTD(文档类型定义) 【还有Schema 以后可以自行学习的,暂时还没有看】 DOMDocument 来解析 xml 步骤主要是,一步一步深入,思路明确,但是比较麻烦 1.得到面 $xml = new Document("1.0","utf-8"); $xml->load('xxx.xml'); 2.得到线(得到节点元素) $xml->getElementByTagName('节点名')- 3.得到点 $nodelist->item(0/1/2.....); 基本概念 1.计算机中用于信息的交换,分离样式和数据,单独得到数据 2.xml是学习webserver和ajax的基础,没有替换掉html之后,出现了xhtml(扩展的超文本语言) 3.xml定义 xml属于可扩展性语言,类似于html,是一种标记语言 目的:传输数据 4.xml特点 可以自行定义标签,并且标签名不能是数组开头 xml和html最大的区别就是数据和样式分离 语法规范 //声明部分--只能这么写 <?xml version="1.0" encoding="utf-8"?> //节点部分--xml 中所有都是节点(普通节点、文本节点(换行节点、空白节点)) //只有一个根节点、成对出现(允许<br/><img/>单便签) //属性尽量小写,属性值只能是 string 类型.必须将"" <root><aa id='12'><bb><br/>你好</bb></aa></root> //注释 <!-- 我是注释 --> //特殊字符--用实体代替 &lt; &gt; &quot; &amp; &apos; < > "" & '' //其实只有< 和 & 是非法的,但是最好全携程实体字符 如果存在大段文本 建议使用 CDATA 节点 <![CDATA[]]> //拥有正确的语法的XML文档是像是"形式良好" 1. xml 文档必须有根目录 2. xml 文档必须有关闭目录 3. xml 标签对大小写感兴趣 4. xml 元素必须被正确的嵌套 5. xml 属性必须加"" DOM 解析 XML (解析xml的标准叫做DOM标准,xml和html都遵守DOM标准,所以PHP,c,js解析是必须遵守DOM标准) 1.使用 getElementsByTagName() 和 childNode() JS解析中有 getElementsByTagName(),getElementsByClassName(),getElementById(只有ID是Element,没有s) 2.PHP的DOM 解析 XML 步骤 1.读取xml文档(创建DOM对象,读取文档) 2.通过getElementsByTagName() 获取对象 3.把 2 中的一组对象挑选节点->item(0) //创建DOM对象,读取xml文档 $dom = new DOMDocument("1.0","utf-8"); $dom->load('001.xml'); //得到tital节点 $ts = $dom->getElementsByTagName('tital'); //返回的是节点列表对象 Object DOMNodelist $ts->length; //节点列表个数 $ts->item(0)->whoText; //第一个节点的文本内容 //一下两个效果一样。 childNodes ==> 返回子节点的集合 nodeValue ==> 返回节点值 $dom->getElementsByTagName('title')->item(0)->nodeValue; $dom->getElementsByTagName('title')->item(0)->childNodes->item(0)->wholeText; DOM 创建 XML (自己制作API的时候需要用到) 1.创建文本节点、普通节点、属性节点、CDATA节点 2.添加到父节点中 //创建DOM对象 $dom = new DOMDocument("1.0","utf-8"); //创建文本节点、普通节点、CDATA节点、属性节点 $text = $dom->createTextNode('你好'); $name = $dom->createElement('name'); $cdata = $dom->createCDATASection('这本书<>很好'); $attr = $dom->createAttribute('goods_id'); $attr->value = '001'; //添加节点 $name->appendChild($text); //输出或者保存 header('content-type:text/xml'); echo $dom->savaxml($dom); $dom->save('./02.xml'); DOM 删除和修改 XML节点 //创建DOM对象,载入页面 $dom = new DOMDocument("1.0","utf-8"); $dom->load('001.xml'); //找到节点 $t1 = $dom->getElementsByTagName('book')->item(0); //修改节点中的内容,使用replaceChild() $newt1 = $dom->createTextNode('999'); $t1->replaceChild($newt1,$t1->firstChild) //删除节点==>使用parentNode()找到父节点,再调用removeChild()删除自己 $t1->parentNode->removeChild($t1); //保存或者输出 header('content-tyep:text/xml'); echo $dom->savexml(); $dom->save('01.xml');

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读