php DOMDocument 创建,加载,解析xml文档代码

 代码如下 复制代码

$xml_str = "<?xml version='1.0'?>";
$xml_str .= "<books>";
$xml_str .= "<book>";
$xml_str .= "<title>harry potter</title>";
$xml_str .= "<author>j.k.rowling</author>";
$xml_str .= "<publisher>warner bros.</publisher>";
$xml_str .= "<price>39.0</price>";
$xml_str .= "</book>";
$xml_str .= "</books>";

$dom = new domdocument;
$dom->loadxml($xml_str);

echo $dom->savexml();
$dom->save("test.xml");

//domdocument 加载xml文档

$dom = new domdocument;

$dom->load('17-1.xml');
$root = $dom->documentelement;

//解析xml文档

 代码如下 复制代码

$doc = new domdocument();
$doc->load("17-1.xml");

$books = $doc->getelementsbytagname("book");
foreach($books as $book)
{
    $authors = $book->getelementsbytagname("author");
    $author = $authors->item(0)->nodevalue;
   
    $publishers = $book->getelementsbytagname("publisher");
    $publisher = $publishers->item(0)->nodevalue;
   
    $titles = $book->getelementsbytagname("title");
    $title = $titles->item(0)->nodevalue;
   
    $prices = $book->getelementsbytagname("price");
    $price = $prices->item(0)->nodevalue;
   
    echo "$title - $author - $publisher - $price";
    echo "<br/>";
    echo "<br/>";
}

/*
17-1.xml

 代码如下 复制代码
<?xml version="1.0" encoding="gb2312"?>
<books>
    <book>
        <title>learning php5</title>
        <author>david</author>
        <publisher>white water press</publisher>
        <price>29.90</price>
    </book>
    <book>
        <title>learning xml</title>
        <author>jeffson</author>
        <publisher>white water press</publisher>
        <price>50.79</price>
    </book>
    <book>
        <title>using perl</title>
        <author>lucas</author>
        <publisher>white water press</publisher>
        <price>17.00</price>
    </book>
    <book>
        <title>windows networks</title>
        <author>paul</author>
        <publisher>white water press</publisher>
        <price>32.99</price>
    </book>
    <book>
        <title>fly leaf</title>
        <author>jenny</author>
        <publisher>white water press</publisher>
        <price>19.50</price>
    </book>
</books>

*/
?>

时间: 2024-10-21 19:56:37

php DOMDocument 创建,加载,解析xml文档代码的相关文章

四种生成和解析XML文档的方法详解(介绍+优缺点比较+示例)

原文链接 作者:Alexia(minmin) 众所周知,现在解析XML的方法越来越多,但主流的方法也就四种,即:DOM.SAX.JDOM和DOM4J 下面首先给出这四种方法的jar包下载地址 DOM:在现在的Java JDK里都自带了,在xml-apis.jar包里 SAX:http://sourceforge.net/projects/sax/ JDOM:http://jdom.org/downloads/index.html DOM4J:http://sourceforge.net/proj

java中四种生成和解析XML文档的方法详解(介绍+优缺点比较+示例)_java

众所周知,现在解析XML的方法越来越多,但主流的方法也就四种,即:DOM.SAX.JDOM和DOM4J 下面首先给出这四种方法的jar包下载地址 DOM:在现在的Java JDK里都自带了,在xml-apis.jar包里 SAX:http://sourceforge.net/projects/sax/ JDOM:http://jdom.org/downloads/index.html DOM4J:http://sourceforge.net/projects/dom4j/  一.介绍及优缺点分析

使用PHP 5.0 轻松解析XML文档(1)

xml 用sax方式的时候,要自己构建3个函数,而且要直接用这三的函数来返回数据, 要求较强的逻辑. 在处理不同结构的xml的时候, 还要重新进行构造这三个函数,麻烦! 用dom方式,倒是好些,但是他把每个节点都看作是一个node,操作起来要写好多的代码, 麻烦! 网上有好多的开源的xml解析的类库, 以前看过几个,但是心里总是觉得不踏实,感觉总是跟在别人的屁股后面. 这几天在搞java, 挺累的,所以决定换换脑袋,写点php代码,为了防止以后xml解析过程再令我犯难,就花了一天的时间写了下面一

使用PHP 5.0 轻松解析XML文档(6)

xml 下面是通过createNode()函数,添加商品, 然后显示添加后的结果 <?xml version="1.0" encoding="GB2312" ?><shop> <name>华联</name> <address>北京长安街-9999号</address> <desc>连锁超市</desc> <telphone>123456789</telp

使用PHP 5.0 轻松解析XML文档(5)

xml 下面是通过getNode()函数,返回某一个分类下的所有商品的信息商品名: food11Array( [name] => food11 [price] => 12.90)Array( [id] => food11)商品名:food12Array( [name] => food12 [price] => 22.10 [desc] => Array ( [value] => 好东西推荐 [attrs] => Array ( [creator] =>

使用PHP 5.0 轻松解析XML文档(4)

xml 下面是例子运行对结果: 下面是通过函数getSaveData()返回的整个xml数据的数组 Array( [name] => 华联 [address] => 北京长安街-9999号 [desc] => 连锁超市 [cat_food] => Array ( [attrs] => Array ( [id] => food ) [goods_food11] => Array ( [name] => food11 [price] => 12.90 [a

使用PHP 5.0 轻松解析XML文档(3)

xml 文件:SimpleDocumentRoot.php <?php/** *========================================================= * * @author hahawen(大龄青年) * @since 2004-12-04 * @copyright Copyright (c) 2004, NxCoder Group * *========================================================

使用PHP 5.0 轻松解析XML文档(2)

xml 文件:SimpleDocumentParser.php <?php/** *========================================================= * * @author hahawen(大龄青年) * @since 2004-12-04 * @copyright Copyright (c) 2004, NxCoder Group * *======================================================

jquery加载XML文档代码分享

jquery加载XML文档代码分享,jquery代码如下. jquery加载XML文档 jquery代码如下 <script type="text/javascript"> $(function(){ $("#ajax").one('click',function(){ //$("#ajax").nextAll().remove(); $.ajax({ url: 'ajax.xml', //data: {id: 1, name: 0}