我希望是一个简单的问题,但我在网上找不到任何有用的信息。
我有一个 xml 文件:
<market id="27719037" name="Wolves v Leeds">
<participant name="home" id="121081062" odds="7/2"/>
<participant name="Draw" id="121081062" odds="7/2"/>
<participant name="away" id="121081062" odds="7/2"/>
</market>
<market id="27719037" name="Liverpool v Fulham">
<participant name="Draw" id="121081062" odds="7/2"/>
<participant name="home" id="121081062" odds="7/2"/>
<participant name="away" id="121081062" odds="7/2"/>
</market>
因为每个市场游戏的XML以不同的顺序输出,所以我不能简单地依赖按顺序输出它。
有没有办法我可以具体地拉出:
主场赔率平局赔率客场赔率?
提前致谢
理查
你可以这样做:
$xml= simplexml_load_file('temp.xml');
$xmlarr = array();
$i=0;
foreach($xml as $market) {
foreach($market as $participant){
$name = (string)$participant['name'];
//to store in pairs of 'home odds' 'draw odds' 'away odds'
$xmlarr[$i][$name] = (string)$participant['odds'];
}
++$i;
}
现在你有$xmlarr
数组,其结构如下所示:
array(2) {
[0]=>
array(3) {
["home"]=>
string(3) "7/2"
["Draw"]=>
string(3) "7/2"
["away"]=>
string(3) "7/2"
}
[1]=>
array(3) {
["Draw"]=>
string(3) "7/2"
["home"]=>
string(3) "7/2"
["away"]=>
string(3) "7/2"
}
}
您可以按所需的顺序访问它们,如下所示:
foreach ($xmlarr as $element) {
echo "home : ".$element ['home']."<br>";
echo "Draw : ".$element ['Draw']."<br>";
echo "away : ".$element ['away']."<br>";
}
o/p
home : 7/2
Draw : 7/2
away : 7/2
home : 7/2
Draw : 7/2
away : 7/2
当您访问['home']
时,您将获得与之相关的odd
。Silmilarly for ['Draw']
& ['away']
.