1

特定の要素のみを抽出する必要がある XML ファイルがあります。そして、ある時点で XML ファイルが更新され、要素が表示される順序が完全に変更される可能性がありますが、要素には name= 設定が含まれています。

<element>
 <sub name='this1'>value</sub>
 <sub name='this2'>value</sub>
 <sub name='this3'>value</sub>
 <sub name='this4'>value</sub>     
</element>

this2 と this4 の値を抽出する必要があります。

ただし、ある段階で、新しいサブ要素が追加され、順序が変更される場合があります。だから私は使用できません:

$xml->element->sub[2]

以下の例:

<element>
 <sub name='this0'>value</sub>
 <sub name='this1'>value</sub>
 <sub name='this2'>value</sub>
 <sub name='this3'>value</sub>     
 <sub name='this4'>value</sub>    
</element>

したがって、sub[2] は this2 ではなく this1 になります。

4

1 に答える 1

1

必要なのは、XPath クエリです$myXml->xpath("/sub[@name=this1]")。Xpath の詳細については、http://php.net/manual/de/simplexmlelement.xpath.php をご覧ください

于 2013-02-13T20:57:47.150 に答える