前往小程序,Get更优阅读体验!
立即前往
发布
社区首页 >专栏 >XML和PHP

XML和PHP

作者头像
苦咖啡
发布2018-05-07 17:47:36
发布2018-05-07 17:47:36
1.5K0
举报
文章被收录于专栏:我的博客我的博客

1、XML知识

Xml就是可扩展标记语言与html一样,都是通用标记语言。 用于标记电子文件使其具有结构性的标记语言,可以用来标记数据、定义数据类型,是一种允许用户对自己的标记语言进行定义的源语言。

2、XML标签属性

<?xml version=”1.0″ encoding=”utf-8″?>

声明版本和编码

<book>

<title id=”mytitle”>xml学习</title>

标签,标签属性,属性内容,标签内容

<author>作者</author>

</book>

3、XML和HTML区别

XML和HTML区别在于,XML是用来存储数据的而HTML使用来定义数据的

XML扩展性比html强、xml语法比html语法严格、XML区分大小写

4、XML使用

RSS

XML数据库

XML接口

5、DOMDocument介绍

Document 对象是一棵文档树的根,可为我们提供对文档数据的最初(或最顶层)的访问入口。  用于元素节点、文本节点、注释、处理指令等均无法存在于 document 之外,document 对象同样提供了创建这些对象的方法。Node 对象提供了一个 ownerDocument 属性,此属性可把它们与在其中创建它们的 Document 关联起来。 具体内容可以自行查找

6、PHP读取XML

$doc=new DOMDocument();

$doc->load(“book.xml”);

$book=$doc->getElementsByTagName(“book”);

数组内容输出

foreach($book as $i)

{

echo $i->nodeValue.”<br />”;

}

/*$title=$doc->getElementsByTagName(“title”);

echo $title->item(0)->nodeValue;

这是获取一个内容

*/

7、PHP创建XML

<?php

$doc=new DOMDocument(‘1.0′,’utf-8’);

$doc->formatOutput=true;//格式xml输出

$root=$doc->createElement(‘root’);//创建一个标签root

$index=$doc->createElement(‘index’);//创建一个标签index

$id=$doc->createAttribute(‘id’);//然后创建一个id属性

$idcon=$doc->createTextNode(‘myid’);//创建一个标签属性内容

$incon=$doc->createTextNode(‘content’);//创建标签内容

$id->appendChild($idcon);//组合过程,把myid赋给id,就是id=myid

$index->appendChild($id);//然后把上面的组合到index标签内

$index->appendChild($incon);//把content组合到index标签内作为标签内容

$root->appendChild($index);//标签index组合到root标签

$doc->appendChild($root);//root标签是顶层标签

$doc->save(“text.xml”);//保存文件

?>

这样text.xml内容如下:

<?xml version=”1.0″ encoding=”utf-8″?>

<root>

<index id=”myid”>content</index>

</root>

8、PHP修改XML

根据修改数据库的原理,而XML的修改和删除

打开xml文件—查询满足条件的标签—重新赋值(删除指定标签)—重新保存

代码如下

$dom=new DOMDocument();

$dom->load(“update.xml”);

$contents=$dom->getElementsByTagName(“joyous”);

foreach($contents as $val){

if($val->getAttribute(“id”)==’id3′){

$val->getElementsByTagName(“content”)->item(0)->nodeValue=’更改内容‘;

}

//删除操作

$root=$dom->documentElement;//找到根文档

if($val->getAttribute(“id”)==’id4′){

$root->removeChild($val);

}

echo $val->getAttribute(“id”).”—“;

echo $val->getElementsByTagName(“content”)->item(0)->nodeValue;

echo “<br />”;

}

//重新保存文件即可

$dom->save(‘update.xml’);

update.xml文件内容

<?xml version=”1.0″ encoding=”utf-8″?>

<root>

<joyous id=”id1″><content>内容1</content></joyous>

<joyous id=”id2″><content>内容2</content></joyous>

<joyous id=”id3″><content>内容3</content></joyous>

<joyous id=”id4″><content>内容4</content></joyous>

</root>

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2012年9月3日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档