2013-06-27 22 views
-1

我有這個xml,我找不到用PHP讀取所有這些數據的方法。我曾嘗試簡單:php和xml,更好的方式來讀取所有節點

$xmlDoc->load("data/xml/page.xml"); 

與所有的休息,但在某種程度上或其他,我無法找到一個方法來讀取畫廊的名稱(在此XML)和的網址/屬性圖片

<DOCUMENT> <galleries_group> 
<GROUP id="main_gallery_group"> 
    <DATA id="category_name"> 
    <CONTENT><![CDATA[Black & White]]></CONTENT> 
    </DATA> 
    <GROUP id="sub_gallery_group"> 
    <DATA id="gallery_name"> 
     <CONTENT><![CDATA[WOMENS]]></CONTENT> 
    </DATA> 
    <GROUP id="sub_gallery_image"> 
     <DATA id="gallery_thumb"> 
     <CONTENT> 
      <SRC width="277" height="366">images/black_white/005_th.jpg</SRC> 
     </CONTENT> 
     </DATA> 
     <DATA id="gallery_image"> 
     <CONTENT> 
      <SRC width="817" height="1080">images/black_white/005.jpg</SRC> 
     </CONTENT> </DATA> 
    </GROUP> 
    <GROUP id="sub_gallery_image"> 
     <DATA id="gallery_thumb"> 
     <CONTENT> 
      <SRC width="515" height="366">images/black_white/006_th.jpg</SRC> 
     </CONTENT> 
     </DATA> 
     <DATA id="gallery_image"> 
     <CONTENT> 
      <SRC width="1521" height="1080">images/black_white/006.jpg</SRC> 
     </CONTENT> 
     </DATA> 
    </GROUP> 
    </GROUP><GROUP id="main_gallery_group"> 
    <DATA id="category_name"> 
    <CONTENT><![CDATA[Gallery ..n]]></CONTENT> 
    </DATA> 
    <GROUP id="sub_gallery_group"> 
    <DATA id="gallery_name"> 
     <CONTENT><![CDATA[GROUP 1]]></CONTENT> 
    </DATA> 
    <GROUP id="sub_gallery_image"> 
     <DATA id="gallery_thumb"> 
     <CONTENT> 
      <SRC width="484" height="366">images/gallery/01_th.jpg</SRC> 
     </CONTENT> 
     </DATA> 
     <DATA id="gallery_image"> 
     <CONTENT> 
      <SRC width="1429" height="1080">images/gallery/01.jpg</SRC> 
     </CONTENT> 
     </DATA> 
    </GROUP> 
    <GROUP id="sub_gallery_image"> 
     <DATA id="gallery_thumb"> 
     <CONTENT> 
      <SRC width="399" height="366">images/gallery/02_th.jpg</SRC> 
     </CONTENT> 
     </DATA> 
     <DATA id="gallery_image"> 
     <CONTENT> 
      <SRC width="981" height="900">images/gallery/02.jpg</SRC> 
     </CONTENT> 
     </DATA> 
    </GROUP> 
    </GROUP> 
    <GROUP id="sub_gallery_group"> 
    <DATA id="gallery_name"> 
     <CONTENT><![CDATA[GROUP N]]></CONTENT> 
    </DATA><GROUP id="sub_gallery_image"> 
     <DATA id="gallery_thumb"> 
     <CONTENT> 
      <SRC width="483" height="366">images/gallery/09_th.jpg</SRC> 
     </CONTENT> 
     </DATA> 
     <DATA id="gallery_image"> 
     <CONTENT> 
      <SRC width="1065" height="600">images/gallery/09.jpg</SRC> 
     </CONTENT> 
     </DATA> 
    </GROUP> 
    <GROUP id="sub_gallery_image"> 
     <DATA id="gallery_thumb"> 
     <CONTENT> 
      <SRC width="235" height="366">images/gallery/10_th.jpg</SRC> 
     </CONTENT> 
     </DATA> 
     <DATA id="gallery_image"> 
     <CONTENT> 
      <SRC width="1920" height="1080">images/gallery/10.jpg</SRC> 
     </CONTENT> 
     </DATA> 
    </GROUP> 
    </GROUP> 
    </GROUP>  
</GROUP> <GROUP id="text_pages_group"> 
<GROUP id="text_page_group"> 
    <DATA id="text_page_name"> 
    <CONTENT><![CDATA[About]]></CONTENT> 
    </DATA> 
    <DATA id="text_page_text"> 
    <CONTENT><![CDATA[text12]]></CONTENT> 
    </DATA> 
</GROUP></GROUP><GROUP id="text_pages_group"><GROUP id="text_page_group"> 
    <DATA id="text_page_name"> 
    <CONTENT><![CDATA[Contact]]></CONTENT> 
    </DATA> 
    <DATA id="text_page_text"> 
    <CONTENT><![CDATA[text22]]></CONTENT> 
    </DATA> 
</GROUP></GROUP></DOCUMENT> 

當然這是一個小的XML(只是例如),但完整的具有相同的格式類型,任何幫助?

回答

0

您可能想嘗試這樣的事情,並根據需要調整XPath。

<?php 
$xmlDoc = simplexml_load_file('data/xml/page.xml'); 
$result = $xmlDoc->xpath('/DOCUMENT//GROUP/DATA/CONTENT'); 
while (list(, $node) = each($result)) { 
    echo $node; 
} 
?> 

但請注意,因爲您最初發布的XML格式不正確。第1行中的<galleries_group>要麼沒有正確關閉,要麼完全沒有必要。