1. 程式人生 > >如何讀取xml檔案,根據xml節點屬性查詢並輸出xml檔案

如何讀取xml檔案,根據xml節點屬性查詢並輸出xml檔案

主要是應用SimpleXML和遞迴函式來根據key值來查詢,並將結果以xml格式輸出。

<?php 
header("Content-type: text/xml");
//以xml格式輸出檔案
@$key=$_GET['key'];
$find=false;
//echo $key."<br>";
$xml = simplexml_load_file('codetree.xml'); 
$part = $xml->tree; 
foreach ( $part as $content ) 
{
 //如果查詢到了,顯示
  if ($content['key']==$key)    
  {
      display(
$content); exit(); } //如果沒找到,繼續查詢 else { findnext($content,$key); } } //顯示資料 function display($value) { foreach($value as $val) { if($val["key"]!="") { echo '<tree text="'.$val["text"].'" key="'.$val['key'].'">'."\r\n"; } else
{ echo '<tree text="'.$val["text"].'" />'."\r\n"; } display($val); } if($value["key"]!="") { echo "</tree> \r\n"; } } function findnext($value,$key) { foreach($value as $val) { //如果查詢到了,顯示 if ($val['key']==$key) {
echo '<tree text="'.$val["text"].'" key="'.$val['key'].'">'."\r\n"; display($val); exit(); } //如果沒找到,繼續查詢 else { findnext($val,$key); } } }

查詢key值為"0-0-0-1-0"的結果。