can someone explain to me, why an xpath expression as this:
$PageName = 'Home';
$nodeObj->xpath("./*[name() = (following-sibling::$PageName | preceding-sibling::$PageName)/menu/*]/menu");
will return just one array of menu item like:
'menu' =>
array (size=1)
'item' =>
array (size=3)
0 => string 'Business Help' (length=13)
1 => string 'Web Help' (length=8)
2 => string 'Tour Help' (length=9)
instead of an array of two menu items like:
'menu' =>
array (size=2)
'item' =>
array (size=3)
0 => string 'Business Help' (length=13)
1 => string 'Web Help' (length=8)
2 => string 'Tour Help' (length=9)
'item' =>
array (size=2)
0 => string 'About us' (length=8)
1 => string 'About our food' (length=14)
Here is an extract of the xml stucture:
<Pages> <!--
<Home>
<url>...</url>
<menu>
<item>Help</item>
<item>About</item>
<item>Contact</item>
</menu>
</Home>
<Help>
<url>...</url>
<menu> <!--
<item>Business Help</item>
<item>Web Help</item>
<item>Tour Help</item>
</menu>
</Help>
<About>
<url>...</url>
<menu> <!--
<item>About us</item>
<item>About our food</item>
</menu>
</About>
<Contact>
<url>...</url>
<menu> <!--
...
and so on...
...
</menu>
</Contact>
</Pages>
and here's a snippet of the php code that attempts to maniplate it
What am i doing wrongly ? any help will be greatly appreciated.