2017-07-26 123 views
0

我試圖獲得名稱爲odds1(1.6)的元素行的值。任何想法如何?如何獲取名稱XML元素的值PHP解析

的XML看起來如下:

<Match id="1"> 
<Name>Charlotte Independence v Richmond Kickers</Name> 
<Date>07/26/2017 19:00:00</Date> 
<Bet type="PS" id="1"> 
<line name="points1">+2.5</line> 
<line name="odds1">1.6</line> 
<line name="points2">+2.5</line> 
<line name="odds2">2.2</line> 

感謝

+0

歡迎來到Stack Overflow!你試過什麼了? PHP在哪裏? – disinfor

回答

2

如下嘗試:

$string = '<Match id="1"> 
<Name>Charlotte Independence v Richmond Kickers</Name> 
<Date>07/26/2017 19:00:00</Date> 
<Bet type="PS" id="1"> 
<line name="points1">+2.5</line> 
<line name="odds1">1.6</line> 
<line name="points2">+2.5</line> 
<line name="odds2">2.2</line> 
</Bet> 
</Match>'; 

$xml = simplexml_load_string($string); 
foreach($xml->Bet->children() as $child) { 
    $val = $child->attributes(); 
    if($val == "odds1") { 
     echo $child; 
    } 
} 

在上面,我已經指派你的XML給一個變量$字符串。 如果它在文件中,您可以使用simplexml_load_file。 然後我通過使用函數屬性()來重複Bet的子項並捕獲屬性。該函數提供了在xml標籤中定義的屬性和值。

其餘的只是檢查屬性是否爲odds1然後捕獲它的值。

+0

或者如果你想懶惰:'$ xml-> Bet-> line [1];'。我的意思是,他確實要求具體價值:來自我的P +1 – icecub