php100:89:xml常识知识补充

xml常识知识补充
XML(即可扩展标记语言,它与HTML一样,都是标准通用标
记语言。Xml是Internet环境中跨平台的,依赖于内容的技术。扩展标记语言XML是一种简单的数据存储语言,使用一系列简单的标记描述数据,而这些标记可以用方便的方式建立,虽然XML占用的空间比二进制数据要占用更多的空间,但XML极其简单易于掌握和使用。
XML与HTML的设计区别是:XML是用来存储数据的,重在数据本身。HTML是用来定义数据的,重在数据的显示模式 .

① XML扩展性比HTML强: 它可以重新定义内置标签。
② XML的语法比HTML严格
  1、起始和结束的标签相匹配
  2、嵌套标签不能相互嵌套
  3、区分大小写
常应用于:RSS 、XML聚合、XML数据库、XML接口等
③ XML与HTML互补
Rss是通过xml继承或者延伸过来的。

<?xml version="1.0" encoding=“utf-8“?>
<php100>
<title> 存储的内容 </title>
</php100>
***************************************
什么是DOM 什么是PHPdom xml解析
DOM 提供了针对 HTML和文档的标准对象集,以及用于访问和操作这些文档的标准接口。
内置功能。不需要安装其他软件。
DOM树节点遵循xml命名规范。
1、Document节点 -- 表示DOMDocument接口
2、Element节点 -- 表示DOMElement接口
3、Attribute节点 -- 表示DOMAttr接口
4、Comment节点 -- 表示DOMComment接口
5、Text节点 -- 表示DOMText接口
***************************************
使用php dom 读取xml
book.xml
<?xml version="1.0" encoding="utf-8"?>
<bookstore>
<book>
<title>PHP100中文网</title>
</book>
</bookstore>

index.php
$doc = new DOMDocument();
$doc->load('book.xml');
$books = $doc->getElementsByTagName( "book" );
$title = $doc->getElementsByTagName( “title" );
Echo $title ->item(0)->nodeValue;  
============================================================================
php100:90:DOM创建生成xml文件

xml标签属性内容介绍
<?xml ?> version是声明版本,encoding 是声明编码
<index id="1"> id是标签属性,1是属性内容。
xml是树形结构。

DOM 生成xml方法介绍
$doc = new DOMDocument(‘1.0’, ‘utf-8’); // 声明版本和编码
$doc -> formatOutput = true; //格式XML输出

$root = $doc -> createElement('root'); //创建一个标签
$index = $doc -> createElement('index'); //创建一个标签
$id = $doc -> createAttribute(‘id’); //创建一个属性
$newsid = $doc -> createTextNode("1"); //设置属性内容
$newsco = $doc -> createTextNode("content"); //设置标签内容
$id -> appendChild($newsid); //继承属性
$index -> appendChild($id); //继承属性内容
$index -> appendChild($newsco); //继承标签内容
$root -> appendChild($index); //继承子类
$doc -> appendChild($root);
$doc -> save(“php100.xml”); // 生成保存为XML
==========================================================================
php100:91:xml修改和删除xml内容和方法

修改:打开文件--》遍历内容--》重新赋值--》保存文件
标签的目的:因为xml文件中很多重名的标签,为了可以精确的进行对标签的操作和定位。
删除:首先确定到根标签,使用removeChild方法找到指定id执行删除操作,这里的删除是指完完整整的删除。
xiugai.php
<?php
$doc=new DOMDocument();
$doc->load("book.xml");
$book=$doc->getElmentByTagName("book");
foreach($book as $note){
if($note->getAttribute('id')==3){
echo $note->getAttribute('id')."--";
echo $node->getElmentByTagName("title")->item(0)->nodeValue='33333';
echo "<br/>";
}
}
$doc -> save(“php100.xml”);
?>
======================================
delete.php
<?php
$doc=new DOMDocument();
$doc->load("book.xml");
$root=$doc->documentElment;
$book=$doc->getElmentByTagName("book");
foreach($book as $note){
if($note->getAttribute('id')==3){
echo $note->getAttribute('id')."--";
echo $node->getElmentByTagName("title")->item(0)->nodeValue='33333';
echo "<br/>";
}
if($note->getAttribute('id')==4){
$root->removeChild($note);
}
}
$doc -> save(“php100.xml”);
?>

=================

create.php

<?php
$doc=new DOMDocument('1.0','utf-8');
$doc->formatOutput=true;

$a= $doc -> createElement('a');
$b= $doc -> createElement('b');
$c= $doc -> createElement('c');
$newsco = $doc -> createTextNode("heihei");
$c -> appendChild($newsco);
$a -> appendChild($b);
$b -> appendChild($c);
$doc -> save(“php100.xml”);

?>

==================

duqu

$doc=new DOMDocument();
$doc->load("book.xml");
$book=$doc->getElmentByTagName("book");
foreach($book as $note){
echo $node->nodeValue;
echo "<br/>";
}

xml配置与使用的更多相关文章

  1. Mybatis XML配置

    Mybatis常用带有禁用缓存的XML配置 <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE ...

  2. SpringMvc的xml配置与annotation配置的例子的区别

    1.导入jar包时,要在xml配置基础上加 spring-aop-4.2.2.RELEASE.jar (注解的时候需要) 2.编写controller的时候要annotation需要做相关配置即红色部 ...

  3. Hibernate实现有两种配置,xml配置与注释配置

    hibernate实现有两种配置,xml配置与注释配置. (1):xml配置:hibernate.cfg.xml (放到src目录下)和实体配置类:xxx.hbm.xml(与实体为同一目录中) < ...

  4. java web.xml配置详解

    1.启动一个WEB项目的时候,WEB容器会去读取它的配置文件web.xml,读取<listener>和<context-param>两个结点. 2.紧急着,容创建一个Servl ...

  5. 关于xml配置实现AOP的小知识

    除了前面介绍的基于JDK1.5的注解方式来定义切面,切入点和增强处理外,Spring AOP也允许直接使用XML配置文件来管理它们.在JDK1.5之前,只能使用配置文件的方式来管理,在Spring2. ...

  6. Ninject之旅之五:Ninject XML配置

    摘要 使用XML配置,需要添加Ninject XML扩展的引用.下一步是添加一个或多个包含类型注册的XML文件.记得这些文件应该跟应用程序一起发布.因此不要忘记将XML文件的属性设置成“Copy if ...

  7. hibernate实现有两种配置,xml配置与注释配置。

    (1):xml配置:hibernate.cfg.xml (放到src目录下)和实体配置类:xxx.hbm.xml(与实体为同一目录中) <?xml version='1.0' encoding= ...

  8. 2015年12月10日 spring初级知识讲解(二)最小化Spring XML配置 注解

    序,随着Spring容器管理Bean数量增加,XML文件会越来越大,而且纯手工配置XML很繁琐,Spring和JAVA都提供了一些注解方式用以简化XML配置. 目录 一.自动装配(autowiring ...

  9. springMVC配置(XML配置详解)

    原文出自:http://www.newasp.net/tech/71609.html web.xml配置: servlet> <servlet-name>dispatcher< ...

  10. Spring MVC的web.xml配置详解(转)

    出处http://blog.csdn.net/u010796790 1.spring 框架解决字符串编码问题:过滤器 CharacterEncodingFilter(filter-name) 2.在w ...

随机推荐

  1. C51-keil编译常见错误和警告处理53

    keil错误:C51编译器识别错类型有三种:1.致命错误:伪指令控制行有错,访问不存在的原文:2.语法及语义错误:语法和语义错误都发生在原文件:3.警告:警告出现并不影响目标文件的产生,但执行:C_5 ...

  2. 14.4.3 Adaptive Hash Index 自适应hash index

    14.4.3 Adaptive Hash Index 自适应hash index 自适应hash index(AHI) 让InnoDB 执行更像内存数据库在系统使用合适的负载组合和足够的内存用于Buf ...

  3. CSDN总结的面试中的十大算法

    1.String/Array/Matrix 在Java中,String是一个包含char数组和其它字段.方法的类.如果没有IDE自动完成代码,下面这个方法大家应该记住: toCharArray() / ...

  4. GruntJs安装及使用入门(自定义grunt任务,合并压缩js、css)

    一.Grunt.js简介(实现自动化) 1)简要说明: 1.GruntJs是基于node的javascript命令行工具,可以自动化构建.测试.生成文档的项目管理工具: 2.使用GruntJs可以自动 ...

  5. 飘窗代码修改了一段js

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  6. Java 设计模式实现 不错的引用

    这段时间有兴趣重新温习一下设计模式在Java中的实现,碰巧看到一个不错的设计模式总结,这里引用一下作为参考. 创建型模式: JAVA设计模式-Singleton JAVA设计模式-Factory JA ...

  7. [转]Java Daemon Startup Script

    How to start a Java program as a Linux daemon with an /etc/init.d script. See also: http://www.sourc ...

  8. freemarker对数字的处理

    freemark会默认对数字进行格式化处理,例如price = 12000,  通过${price}显示为12,000,  但其实有些场景会有问题: 比如编辑一条记录, 再保存,容易将12,000传到 ...

  9. java中Object相关的几个方法

    protected Object clone()创建并返回此对象的一个副本. String     toString()返回该对象的字符串表示. boolean equals(Object obj)指 ...

  10. iOS内存管理(一)

    最近有时间,正好把iOS相关的基础知识好好的梳理了一下,记录一下内存相关方面的知识. 在理解内存管理之前我觉得先对堆区和栈区有一定的了解是非常有必要的. 栈区:就是由编译器自动管理内存分配,释放过程的 ...