gpt4 book ai didi

php - 在 xpath 中选择多个条件

转载 作者:行者123 更新时间:2023-12-01 23:11:01 24 4
gpt4 key购买 nike

我正在尝试使用高尔夫锦标赛的 xml 提要来显示高尔夫球场上每个高尔夫球手的位置。我目前想要显示满足两个标准的每位高尔夫球手(进入前 25 名,以及所有加拿大高尔夫球手)。

这是 xml feed 的示例。

<GolfDataFeed Type="Leaderboards" Timestamp="3/21/2012 9:18:09 PM">
<Tournament ID="27828" Name="WEGMANS LPGA CHAMPIONSHIP">
<Leaderboard RoundID="4" CutRound="" CutLine="">
<Player ID="82866" WwgrID="975" FirstName="Inbee" LastName="Park" Country="KOR" IsAmateur="False" Rank="1" RankTied="False" StartRank="1" StartRankTied="False" Thru="0" StartTee="1" StartTime="01:25 PM" RoundToPar="0" CumulativeTotal="206" CumulativeToPar="-10" Money="0" TournamentStatus="ACT" RoundStatus="ACT">
<Player ID="82850" WwgrID="434" FirstName="I.K." LastName="Kim" Country="KOR" IsAmateur="False" Rank="2" RankTied="False" StartRank="2" StartRankTied="False" Thru="0" StartTee="1" StartTime="01:25 PM" RoundToPar="0" CumulativeTotal="210" CumulativeToPar="-6" Money="0" TournamentStatus="ACT" RoundStatus="ACT">
<Player ID="88290" WwgrID="3336" FirstName="Jodi" LastName="Ewart Shadoff" Country="ENG" IsAmateur="False" Rank="3" RankTied="False" StartRank="3" StartRankTied="False" Thru="0" StartTee="1" StartTime="01:14 PM" RoundToPar="0" CumulativeTotal="213" CumulativeToPar="-3" Money="0" TournamentStatus="ACT" RoundStatus="ACT">
<Player ID="98006" WwgrID="2982" FirstName="So Yeon" LastName="Ryu" Country="KOR" IsAmateur="False" Rank="4" RankTied="True" StartRank="4" StartRankTied="True" Thru="0" StartTee="1" StartTime="01:14 PM" RoundToPar="0" CumulativeTotal="215" CumulativeToPar="-1" Money="0" TournamentStatus="ACT" RoundStatus="ACT">
</Leaderboard>
</Tournament>
</GolfDataFeed>

这是我编写的代码,用于选择所有加拿大高尔夫球手或前 25 名中的高尔夫球手

$context = stream_context_create(array('http' => array('header' => 'Accept: application/xml')));
$url = 'http://services.lpgascoring.com/ws/1.2/leaderboard;
$xml = file_get_contents($url, false, $context);
$xml = simplexml_load_string($xml);

foreach($xml->xpath("///Player[@Rank<'25' or @Country='CAN']") as $Player)

我尝试添加额外的行来按姓氏选择玩家,但这似乎不起作用。

foreach($xml->xpath("///Player[@Rank<'25' or @Country='CAN' or @LastName='Wie' or @LastName='Peterson']") as $Player)

有人知道如何在 xpath 查询中包含更多条件语句吗?

提前致谢,迈克

最佳答案

您的 XPath 中有太多正斜杠。试试这个 XPath:

//Player[@Rank<'25' or @Country='CAN']

关于php - 在 xpath 中选择多个条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17392781/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com