DOMDocument这个功能是我们php中自带的一个功能,下面我来介绍利用DOMDocument生成xml文档,并且也介绍DOMDocument解析xml文件的方法,有需要的朋友可参考.
数组实例代码如下:
- $arr[] = array(
-
- 'name' => $row['name'],
-
- 'sex' => $row['sex'],
-
- 'age' => $row['age']
-
- );
生成php,代码如下:
- $doc = new DOMDocument('1.0', 'utf-8');
-
- $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['name']));
-
- $b->appendChild($name);
- $sex = $doc->createElement("sex");
-
- $sex->appendChild($doc->createTextNode($dat['sex']));
-
- $b->appendChild($sex);
-
- $age = $doc->createElement("age");
-
- $age->appendChild($doc->createTextNode($dat['age']));
-
- $b->appendChild($age);
-
- $r->appendChild($b);
-
- }
- echo $doc->saveXML();
这样就生成了一个xml文件了.
解析xml文件也是非常的简单了,代码如下:
- header("Content-type:text/html; Charset=utf-8");
-
- $url = "createXML.php";
-
- $reader = new XMLReader();
-
- $reader->open($url);
-
- $i=1;
-
- while ($reader->read()) {
-
- if ($reader->nodeType == XMLReader::TEXT) {
-
- $m = $i%3;
-
- if($m==1)
-
- $name = $reader->value;
-
- if($m==2)
-
- $sex = $reader->value;
-
- if($m==0){
-
- $age = $reader->value;
-
- $arr[] = array(
-
- 'name' => $name,
-
- 'sex' => $sex,
-
- 'age' => $age
-
- );
-
- }
-
- $i++;
-
- }
-
- }
-
-
|