2017-01-31 1 views
0

Ich habe folgendes xml mit simplexml_load_string analysiert:PHP alle Attribute von xml

<ItemAttributes> 
       <Binding>Misc.</Binding> 
       <Brand>Gotcha</Brand> 
       <Feature>schöne Kontraststickerei</Feature> 
       <Feature>langer und taillierter Schnitt</Feature> 
       <Feature>kleine Kängurutasche</Feature> 
       <Feature>Druckknopfleiste mit großen Metallknöpfen</Feature> 
       <Feature>Rückseite figurbetonend gerafft</Feature> 
       <ProductGroup>Sports</ProductGroup> 
       <ProductTypeName>SPORTING_GOODS</ProductTypeName> 
       <Title>Gotcha Damen Strickjacke</Title> 
      </ItemAttributes> 

Und wollen alle "Feature" holen innerhalb auf Array-Taste. eigentlich mache ich das so:

$response = array(
      "details" => htmlentities((string) $item->ItemAttributes->Feature) 
); 

Damit hole ich nur das erste Attribut. Die "Schöne Kontraststickerei". aber ich möchte alle Attribute in der $ Antwort ['Details'] haben. im besten Fall durch Komma getrennt.

+0

zeigen, wie laden die XML-Inhalte – RomanPerekhrest

+0

'$ response = array(); foreach ($ item-> children() als $ node) { $ response [] = $ node-> Feature; } print_r ($ antwort); ' –

Antwort

1

Sie können jede einfache XML-Objekt in ein Array umwandeln:

$response = array(
    "details" => htmlentities((string) implode(",",(array) $item->ItemAttributes->Feature)) 
); 
+0

das ist es! Danke vielmals! – swapfile