2012-09-15 60 views
-1

請教我如何使用php導航xml。按順序導航XML

看看http://laws-lois.justice.gc.ca/eng/XML/C-42.xml

我第一次嘗試使用simplexml_load_file,但它所做的是將所有數據按標籤分組,但在較低級別上很好,但我需要的是保留一些線性。

換句話說,一旦我進去,我需要知道哪些節遵循其標題等

我怎麼會去嗎?

<?php 
    $url="http://laws-lois.justice.gc.ca/eng/XML/C-42.xml"; 
    $xml=simplexml_load_file($url); 

    echo $xml->Identification->LongTitle; 
    echo "<br>"; 

    foreach ($xml->Body as $hd) { 
      // WHAT DO I DO HERE? 
    } 
?> 
+1

是否要添加一些代碼? – andrewsi

+0

我看不出有什麼理由要這樣做。這是一個合法的問題,展示了一些研究成果,對於像我這樣的人來說,他們只是開始弄清楚simplexml是什麼 –

回答

1

您可以使用the ->children() method來循環SimpleXML中元素的所有子元素。

foreach ($simple_xml_doc->children() as $tag) { ... }將爲您提供每個子元素的SimpleXML對象,無論標記如何,均按其出現在原始文件中的順序排列。

+0

感謝這非常有幫助。一旦我獲得了$ tag的數組 - 是否有一種方法可以從$ tag的內部知道它是一個標題還是一個節?換句話說,我怎麼知道標籤實際上是什麼? –

+0

找到了我的問題的答案。我會用 - > getName() –