2013-02-09 2 views
0

У меня возникли проблемы с получением всех данных из моего XML. Может ли кто-нибудь пролить свет, пожалуйста.SimpleXMLElement и получение значения атрибута?

Мой XML выглядит следующим образом

<storeitems> 
<PRODUCT ITEM="3002074730"> 
<SPECIALS_ID>14713</SPECIALS_ID> 
<FULL_PRICE>27.00</FULL_PRICE> 
<SPECIALS_NEW_PRODUCTS_PRICE>25.65</SPECIALS_NEW_PRODUCTS_PRICE> 
</PRODUCT> 
<PRODUCT ITEM="SE-0088-10-3"> 
<SPECIALS_ID>29555</SPECIALS_ID> 
<FULL_PRICE>53.99</FULL_PRICE> 
<SPECIALS_NEW_PRODUCTS_PRICE>51.29</SPECIALS_NEW_PRODUCTS_PRICE> 
</PRODUCT> 
<storeitems> 

Мой код выглядит следующим образом

$xml = new SimpleXMLElement($data); 

foreach($xml->PRODUCT as $post) { 

    echo $post->SPECIALS_ID .'<BR>'; 
    echo $post->FULL_PRICE . '<BR>'; 
    echo $post->SPECIALS_NEW_PRODUCTS_PRICE . '<BR>'; 
} 

Это делает то, что я ожидал, но вы можете помочь мне в получении этой части XML вторить пожалуйста

<PRODUCT ITEM="3002074730"> 

ответ

0
echo $post->attributes(); 

будет печатать значение вашего атрибута item (первый) (это объект, который делает это, когда он вызывается в контексте строки).

Если добавить несколько атрибутов, и вы хотите, чтобы получить их все, вы можете перебрать $post->attributes():

foreach($post->attributes() as $name => $value){ 
    ... 
} 
Смежные вопросы