2012-06-09 45 views
1

我有以下格式的xml文件。xpath和使用php的xquery

<pages> 
    <contents> 
    <menu><![CDATA[menu1]]></menu> 
    <texts><![CDATA[content1]]></texts> 
    </contents> 

    <contents> 
    <menu><![CDATA[menu2]]></menu> 
    <texts><![CDATA[content2]]></texts> 
    </contents> 

    <contents> 
    <menu><![CDATA[menu3]]></menu> 
    <texts><![CDATA[content3]]></texts> 
    </contents> 
</pages> 

在這裏,我想通過與例如菜單1菜單節點值的參數傳遞和我想要得到的文本節點即內容1左右。

我怎麼能使用PHP/xquery。

感謝

回答

0

使用這樣的(我不知道PHP):

/pages/content[menu = $foo]/texts/text() 

string(/pages/content[menu = $foo]/texts) 

其中$foo變量是menu元素的字符串值,該元素的「文本」是需要的。

+0

他不在菜單元素內尋找文本。他想要'texts'元素內的文本,這是'menu'的兄弟。 –

+0

@ shiplu.mokadd.im:感謝您的明確表達 - 我相應地修改了答案。 –