> php教程 > php手册 > 본문

PHP中DOMDocument生成与解析XML格式数据

WBOY
풀어 주다: 2016-05-25 16:42:09
원래의
1174명이 탐색했습니다.

DOMDocument这个功能是我们php中自带的一个功能,下面我来介绍利用DOMDocument生成xml文档,并且也介绍DOMDocument解析xml文件的方法,有需要的朋友可参考.

数组实例代码如下:

<?php
$arr[] = array(
    &#39;name&#39; => $row[&#39;name&#39;],
    &#39;sex&#39; => $row[&#39;sex&#39;],
    &#39;age&#39; => $row[&#39;age&#39;]
);
?>
로그인 후 복사

生成php,代码如下:

<?php
$doc = new DOMDocument(&#39;1.0&#39;, &#39;utf-8&#39;); // 声明版本和编码
$doc->formatOutput = true;
$r = $doc->createElement("root");
$doc->appendChild($r);
foreach ($arr as $dat) {
    $b = $doc->createElement("data");
    $name = $doc->createElement("name");
    $name->appendChild($doc->createTextNode($dat[&#39;name&#39;]));
    $b->appendChild($name);
    $sex = $doc->createElement("sex");
    $sex->appendChild($doc->createTextNode($dat[&#39;sex&#39;]));
    $b->appendChild($sex);
    $age = $doc->createElement("age");
    $age->appendChild($doc->createTextNode($dat[&#39;age&#39;]));
    $b->appendChild($age);
    $r->appendChild($b);
}
echo $doc->saveXML();
?>
로그인 후 복사

这样就生成了一个xml文件了.

解析xml文件也是非常的简单了,代码如下:

<?php
header("Content-type:text/html; Charset=utf-8");
$url = "createXML.php";
$reader = new XMLReader(); //实例化XMLReader
$reader->open($url); //获取xml
$i = 1;
while ($reader->read()) {
    if ($reader->nodeType == XMLReader::TEXT) { //判断node类型
        $m = $i % 3;
        if ($m == 1) $name = $reader->value; //读取node值
        if ($m == 2) $sex = $reader->value;
        if ($m == 0) {
            $age = $reader->value;
            $arr[] = array(
                &#39;name&#39; => $name,
                &#39;sex&#39; => $sex,
                &#39;age&#39; => $age
            );
        }
        $i++;
    }
}
//print_r($arr);
?>
로그인 후 복사


文章地址:

转载随意^^请带上本文地址!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
최신 이슈
인기 추천
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿