2015-10-19 58 views
0

我有一個XML,但我似乎無法訪問任何節點。PHP SimpleXML如何訪問數據

當我使用下面的代碼時,我可以看到它正在拾取數據,但我似乎無法單獨訪問節點。

$xml=simplexml_load_file("uploads/" . $fileName) or die("Error: can't create  object"); 
echo'<pre>'; 
print_r($xml); 
echo'</pre>'; 

下面是一條示例記錄。

<CONSOLIDATED_LIST xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> 
<INDIVIDUALS> 
<INDIVIDUAL xsi:noNamespaceSchemaLocation=""> 
<DATAID>110404</DATAID> 
<VERSIONNUM>1</VERSIONNUM> 
<FIRST_NAME>MOHAMMAD BAQER</FIRST_NAME> 
<SECOND_NAME>ZOLQADR</SECOND_NAME> 
<UN_LIST_TYPE>Iran</UN_LIST_TYPE> 
<REFERENCE_NUMBER>IRi.043</REFERENCE_NUMBER> 
<LISTED_ON>2007-03-24</LISTED_ON> 
<COMMENTS1>[Old Reference # I.47.D.7]</COMMENTS1> 
<DESIGNATION> 
<VALUE>General/IRGC officer</VALUE> 
<VALUE>Deputy Interior Minister for Security Affairs</VALUE> 
</DESIGNATION> 
<LIST_TYPE> 
<VALUE>UN List</VALUE> 
</LIST_TYPE> 
<LAST_DAY_UPDATED> 
<VALUE>2014-12-17</VALUE> 
</LAST_DAY_UPDATED> 
<INDIVIDUAL_ALIAS> 
<QUALITY>Good</QUALITY> 
<ALIAS_NAME> 
Mohammad Bakr Zolqadr; Mohammad Bakr Zolkadr; Mohammad Baqer Zolqadir;  Mohammad Baqer Zolqader 
</ALIAS_NAME> 
</INDIVIDUAL_ALIAS> 
<INDIVIDUAL_ADDRESS/> 
<INDIVIDUAL_DATE_OF_BIRTH/> 
<INDIVIDUAL_PLACE_OF_BIRTH/> 
<INDIVIDUAL_DOCUMENT/> 
<SORT_KEY>Zolqadr</SORT_KEY> 
<SORT_KEY_LAST_MOD>2014-06-18</SORT_KEY_LAST_MOD> 
</INDIVIDUAL> 

我需要訪問每個值,空白或以其他方式,並付諸變量。

我一直在嘗試各種代碼在這裏是一個非常簡單的例子,但我似乎無法訪問數據

foreach($xml->children() as $child) 
{ 
echo $child->individuals->individual->dataid; 
} 
+0

你可以很容易地通過訪問這些數據: - '$ XML-> individuals->單獨[0] - >節點名;' – Akshay

回答

1

你也可以遍歷這樣的INDIVIDUALS陣列和訪問成員對象

foreach($xml->INDIVIDUALS->INDIVIDUAL as $node){ 
    echo $node->DATAID . PHP_EOL; 
} 
+0

非常感謝@alexandrei,非常感謝! –

+0

歡迎您! –