xml的语法与创建
xml语法很简单,但很严格,如果出现错误则不能正常解析,而HTML如果出现局部的错误,照样解析
xml第一行必须写xml头<?xml version='1.0' encoding='utf8'?>
如果不写在第一行,则会报错
除了头xml文件只能有一个根标签,根标签中可以有多个标签,这些标签可以嵌套,但不可以交叉嵌套
xml是为了传输数据而生的,而不是显示数据,显示数据用html
标签中可以存在属性:属性必须要有值,属性值必须用引号引起来
注释内容用<!--这里是注释内容-->
在页面中要显示特殊符号,要使用实体代替
如果要引入大段的文本,不可能将所有的特殊符号都替换成实体,要用到CDATA标签<![CDATA[大段文本存放位置]]>
手写的xml 01.xml
<?xml version='1.0' encoding='utf8' ?>
<bookstory>
<book>
<title>java基础</title>
<price>19.9元</price>
</book>
<book>
<title>c语言程序设计</title>
<price>15.0元</price>
</book>
<book>
<title>java实战</title>
<price>35.5元</price>
</book>
</bookstory>
php解析readxml.php
<?php //创建DOM对象
$dom=new DOMdocument('1.0','utf8'); //载入xml文档
$dom->load('01.xml'); //得到title节点
$title=$dom->getElementsByTagName('title'); //var_dump($title);//返回object(DOMNodeList)[2]Dom节点列表 $book=$title->item(0);//获得第一个节点对象
//var_dump($book); $name=$book->nodeValue;//获得这个节点的内容 echo $name; ?>
php创建xml 02.php
<?php
//程序生成xml文件 //创建dom对象
$dom=new DOMdocument('1.0','utf8'); //创建文本节点
$t1=$dom->createTextNode('java基础知识'); //创建普通节点
$name=$dom->createElement('title'); //将文本节点添加到普通节点中
$name->appendChild($t1); $t2=$dom->createTextNode('19.9元');
$price=$dom->createElement('price');
$price->appendChild($t2); //创建CDATA
$cdata=$dom->createCDATASection('这里的内容可以随便写,反正不解析{{}{}{}【】【】[]'); //创建属性
$att=$dom->createAttribute('id');
$att->value='sn21314324234123'; $name->appendChild($att); //创建根节点
$story=$dom->createElement('bookstory'); $book=$dom->createElement('book');
$book->appendChild($name);
$book->appendChild($price);
$story->appendChild($book);
$story->appendChild($cdata);
$dom->appendChild($story);
header('content-type:text/xml');
//输出
echo $dom->savexml(); ?>
xml的语法与创建的更多相关文章
- (C#)xml的简单理解创建和读取
xml知识点清理:一.文档规则 1.区分大小写. 2.属性值必须加引号(单引号.双引号都可以),一般情况下建议使用使用双引号. 3.所有标记必须有结束符号. 4.所有空标记必须关闭. 5.必须有且仅有 ...
- JAVA企业级开发-xml基础语法&约束&解析(04)
一.什么是xml html:超文本标记语言.它主要是用来封装页面上要显示的数据,最后通过浏览器来解析html文件,然后把数据展示在浏览器上.同样我们可以使用JS和DOM技术对html文件进行解析和操作 ...
- xml的解析与创建——bing到youdao导入文件的转换
首先是为了解决一个问题:如何将必应单词本中记录的单词转入到有道词典中去.实际上,必应词典可以导出xml文件,但是该文件有道词典无法解析.这里涉及到xml的解析和创建了. 代码如下: import ja ...
- Dom4j解析Xml文件,Dom4j创建Xml文件
Dom4j解析Xml文件,Dom4j创建Xml文件 >>>>>>>>>>>>>>>>>>&g ...
- 解析XML出错,无法创建DOMDocument对象
[问题] 加载XML配置文件时,创建DOMDocument对象总是失败,创建代码如下: MSXML2::IXMLDOMDocumentPtr pXMLDoc; MSXML2::IXMLDOMEleme ...
- XML的语法
XML的语法 文档声明: 写法 <?xml version="1.0" ?> 文档声明必须出现在xml文件的第一行和第一列的位置 属性: version="1 ...
- XML DTD语法详解
XML DTD详解 XML DTD详解 前情提要与本文内容介绍 前面的两篇XML相关博文: 第一篇是介绍格式正规的XML: 格式正规的XML:语法 属性 实体 处理指令 样式单 CDATA节 第二 ...
- java日志框架系列(4):logback框架xml配置文件语法
1.xml配置文件语法 由于logback配置文件语法特别灵活,因此无法用DTD或schema进行定义. 1.配置文件基本结构 配置文件基本结构:以<configuration>标签开头, ...
- WSO2 ESB XML定义语法(1)
1.(基于Apache Synapse的WSO2 ESB实现)参考文件位置: http://synapse.apache.org/userguide/config.html 基于Apache Syna ...
随机推荐
- while (cin>>str)退出死循环
今天在练习的时候突然发现了这个问题,百度之感觉还挺常见的,故记之! //题目描述 // //写出一个程序,接受一个十六进制的数值字符串,输出该数值的十进制字符串. // //输入描述 : //输入一个 ...
- MultiByteToWideChar和WideCharToMultiByte用法详解
今天写ini文件的时候发现的问题: TCHAR temp[]; //strcpy_s(temp, request.newVersion); MultiByteToWideChar(CP_ACP, , ...
- mysql日期加减问题
有一个date列,我想修改下,让该列里每个日期都加上7天,怎么写代码? update [表名] set date=date_add(date, interval 7 day); SELECT * f ...
- hdoj 2098 分拆素数和
分拆素数和 Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submi ...
- 转载sql server 关于 default value的一些使用总结
转载原出处:http://blog.csdn.net/miqi770/article/details/6728733 1.在创建表的时候,给字段添加的默认值约束 CREATE TABLE " ...
- C/S 和 B/S 模式的区别与联系
如果要比较两种事物之间的相同点和不同点,首先,我们要分别对这两种事物有一个最基本的了解. 一.C/S与B/S的定义 C/S (Client/Server)结构,即大家熟知的客户机和服务器结构.它是软件 ...
- iOS 开发 上传代码至github(转)
一.注册github账号 首先需要注册一个github账号,注册地址:https://github.com 接着会来到这 然后会收到一封github发的邮件,进入邮箱验证 二.创建个人的githu ...
- 转(HP大中华区总裁孙振耀退休感言)
开篇转发一篇好文,苦闷,消沉,寂寞,堕落的时候看看. 发现这篇文章是09年之前就有人转发到自己博客了.放到自己的地盘,容易记起有这么个心灵鸡汤. 一.关于工作与生活 我有个有趣的观察,外企公司多的 ...
- PowerDesigner 企业架构模型 ( EAM )
PowerDesigner 企业架构模型 ( EAM ) 说明 file工作数据库框架application网络 目录(?)[+] 一. 企业架构模型 说明 EnterpriseArchite ...
- The Hundred Greatest Theorems
The Hundred Greatest Theorems The millenium seemed to spur a lot of people to compile "Top 100& ...