2010-06-01 110 views
0

嘿,我是xPath的新手,時間不利於我,我現在沒有時間去了解它,所以我希望你們可以幫助我! :)php simplexml xpath問題

這裏是我的XML格式:

<Filme> 
<Film> 
    <filmid>13497</filmid> 
    <originaltitel>Bird</originaltitel> 
    <originaluntertitel></originaluntertitel> 
    <titel>Bird (OmU)</titel> 
    <untertitel></untertitel> 
    <filmstart>0000-00-00</filmstart> 
    <fsk>12</fsk> 
</Film> 
</Filme> 

下面是一些PHP代碼,文件加載到SimpleXML對象,並做一些搜索(在$ MOVIE_NAME變量是作爲參數傳遞給一個字符串該功能):

$xml = simplexml_load_file("/somePath/Filme.xml"); 

//will find all the titles that contains the string $movie_name 
foreach($xml->xpath("//titel[contains(.,'$movie_name')]") as $title){ 

     //need to find the filmid corresponding to this film title 
     //$id = ????? 
     $res .= $title."<input type='checkbox' name='movies' value='$id' ><br />"; 
    } 

所以我的問題是代碼中的註釋,什麼是XPath語法來檢索filmid時,我有Titel的元素值?

回答

1

//titel[contains(.,'Bird')]/ancestor::*/filmid

+0

謝謝,這是非常有益的。 我實際上已將其修改爲://titel[.='$title']/ancestor::*/filmid 以獲取此特定標題的ID,而不是包含此標題的ID。 – Piero 2010-06-01 09:00:17