PHP XML的处理

来源:互联网 发布:qq for mac 怎么解压 编辑:程序博客网 时间:2024/06/05 04:06

1.XML的概念

节点:节点就是处理XML的Node,节点失意哥比较宽泛的概念,在XML中元素,属性,名字空间,注释,文本内容,处理指令,还有整个文档都属于节点。

元素:元素就是Element的节点的一个子集。

属性:就像html一样,在<>里面的ZZ="TTT"等都是属性。

转义字符:在很多地方都需要转一字符,如下:

<&lt;>&gt;&&amp;'&apos;"&quot;

2.php操作xml函数

函数描述PHP__construct()创建一个新的 SimpleXMLElement 对象。5addAttribute()给 SimpleXML 元素添加一个属性。5addChild()给 SimpleXML 元素添加一个子元素。5asXML()从 SimpleXML 元素获取 XML 字符串。5attributes()获取 SimpleXML 元素的属性。5children()获取指定节点的子。5getDocNamespaces()获取 XML 文档的命名空间。5getName()获取 SimpleXML 元素的名称。5getNamespaces()从 XML 数据获取命名空间。5registerXPathNamespace()为下一次 XPath 查询创建命名空间语境。5simplexml_import_dom()从 DOM 节点获取 SimpleXMLElement 对象。5simplexml_load_file()从 XML 文档获取 SimpleXMLElement 对象。5simplexml_load_string()从 XML 字符串获取 SimpleXMLElement 对象。5xpath()对 XML 数据运行 XPath 查询。5
3.以下是一个小案例

<?php$string = <<<HTML<documents>    <document>        <cmd>login</cmd>        <login>Richard</login>    </document>    <document>        <cmd>login</cmd>        <login>Luck</login>    </document></documents> HTML;$xml = new SimpleXMLElement($string);print_r($xml);foreach($xml->document as $v) {    echo $v->login.PHP_EOL;}//读取数据$xml->document[0]->login.PHP_EOL;//修改数据$xml->document[0]->login = 'Bingo';echo PHP_EOL;foreach($xml->document as $v) {    echo $v->login.PHP_EOL;}//删除数据unset($xml->document[0]);echo PHP_EOL;foreach($xml->document as $v) {    echo $v->login.PHP_EOL;}//添加数据$doc = $xml->addChild('document');$doc->addChild('cmd', 'login');$doc->addChild('login', 'wangwu');echo PHP_EOL;foreach($xml->document as $v) {    echo $v->login.PHP_EOL;}$xml->asXML('01.xml');



1 0