L'accès de tous les enfants d'un certain nœud avec simplexml et php

J'ai une question et la réponse est sûr que simple, mais il lui manque juste de la compréhension de mon côté.

J'ai un fichier xml avec le look ci-dessous (exemple court)

<item id="1234">
    <property name="country_id">
        <value>4402</value>
    </property>
    <property name="rc_maintenance_other">
    </property>
    <property name="claim_right_shareholder">
    </property>
    <property name="charges_other">
    </property>
    <property name="other_expenses_heating">
    </property>
    <property name="unpaid_bills_amount">
    </property>
    <property name="iv_person_phone">
        <value>03-6756711</value>
    </property>
</item>
<item id="9876">
   ...
</item>

Mon problème est que je veux lire tous les propertys à partir d'un élément avec l'id 1234 avec leurs attributs et leur valeur, s'il en existe un, dans un tableau.

Je sais comment accéder à l'Élément avec xpath. (Merci à ce merveilleux stackoverflow la communauté 🙂 )

Mais comment puis-je utiliser les enfants() fonction que jusqu'à un certain point?

Comme ce

foreach ($item[id="1234"]->children() as $property) {

Merci beaucoup!

  • Premier à écrire du code pour accéder à l'élément de l'élément que vous voulez les enfants à partir de. Stocker dans une variable. Appeler les enfants() la méthode sur elle. Comme vous l'avez écrit vous savez comment la première partie des œuvres, et vous savez à propos de la méthode children() donc en gros, c'est seulement en train de mettre les deux ensemble.
  • double possible de SimpleXML obtenir le contenu d'un élément basé sur la valeur de l'attribut
  • Mais je ne pourrais pas comprendre votre question complètement, peut-être jeter un peu de lumière. Voulez-vous dire pour obtenir tous les descendants?
  • double possible de la mise en Œuvre de la condition dans XPath et XQuery
InformationsquelleAutor Owl | 2013-04-17