我想像div那样做一个分页。现在div用xml填充,显示6个结果。我想点击一个按钮来显示下一个/前一个6个结果。我不知道如何强制xml返回结果,如匹配[0]匹配[5]和下次点击匹配[6]匹配[11]。
widget.php中的XML:
foreach ($xml->team->last_matches->match as $match) {
//some php and html stuff
}
如果我传递给文件widget.php的javascript变量是limit
,则需要以下内容:
for ($x = 0; $x < $_GET['limit']; x++)
foreach ($xml->team->last_matches->match[x] as $match) {
//some php and html stuff
}
}
不确定在何处指定显示最后六个条目,直到limit
。提前谢谢。
答案 0 :(得分:0)
考虑使用方括号[]
表示的xpath节点索引。下面演示了Google Doodles的XML示例:
XML
<root>
<GoogleDoodles>
<ID>1758</ID>
<DoodleDate>2015-07-01</DoodleDate>
<Doodle>Canada Day 2015</Doodle>
</GoogleDoodles>
<GoogleDoodles>
<ID>1759</ID>
<DoodleDate>2015-07-04</DoodleDate>
<Doodle>Fourth of July 2015</Doodle>
</GoogleDoodles>
<GoogleDoodles>
<ID>1760</ID>
<DoodleDate>2015-02-15</DoodleDate>
<Doodle>50th Anniversary of the Canadian Flag</Doodle>
</GoogleDoodles>
<GoogleDoodles>
<ID>1761</ID>
<DoodleDate>2015-02-15</DoodleDate>
<Doodle>Cricket World Cup 2015 - India vs. Pakistan</Doodle>
</GoogleDoodles>
<GoogleDoodles>
<ID>1762</ID>
<DoodleDate>2015-02-17</DoodleDate>
<Doodle>Carnival 2015</Doodle>
</GoogleDoodles>
<GoogleDoodles>
<ID>1763</ID>
<DoodleDate>2015-02-16</DoodleDate>
<Doodle>Rosenmontag 2015</Doodle>
</GoogleDoodles>
<GoogleDoodles>
<ID>1764</ID>
<DoodleDate>2015-02-18</DoodleDate>
<Doodle>Alessandro Volta's 270th Birthday</Doodle>
</GoogleDoodles>
<GoogleDoodles>
<ID>1765</ID>
<DoodleDate>2015-02-24</DoodleDate>
<Doodle>Rosalia de Castro's 178th Birthday</Doodle>
</GoogleDoodles>
<GoogleDoodles>
<ID>1766</ID>
<DoodleDate>2015-02-19</DoodleDate>
<Doodle>Lunar New Year 2015 (Vietnam)</Doodle>
</GoogleDoodles>
<GoogleDoodles>
<ID>1767</ID>
<DoodleDate>2015-02-26</DoodleDate>
<Doodle>Jose Mauro de Vasconcelos' 95th Birthday</Doodle>
</GoogleDoodles>
<GoogleDoodles>
<ID>1768</ID>
<DoodleDate>2015-02-19</DoodleDate>
<Doodle>Lunar New Year 2015</Doodle>
</GoogleDoodles>
</root>
PHP 脚本
$xml = simplexml_load_file('path/to/xml/file.xml');
# $xml = simplexml_load_string($xmlstring);
$limit = 5;
for($j=0; $j <= $limit; $j++) {
foreach ($xml->xpath("//GoogleDoodles[".$j."]/Doodle") as $d) {
echo $d->saveXML()."\n";
}
}
// <Doodle>Canada Day 2015</Doodle>
// <Doodle>Fourth of July 2015</Doodle>
// <Doodle>50th Anniversary of the Canadian Flag</Doodle>
// <Doodle>Cricket World Cup 2015 - India vs. Pakistan</Doodle>
// <Doodle>Carnival 2015</Doodle>