我对 php simplexml xpath 有一个愚蠢的问题,我不明白。
xml结构:
<tv>
<programme start="zeitbla" stop="zeitbla2" channel="19">
<title>erstertitelbla</title>
<desc>blablabeschreibung</desc>
<category lang="ja_JP">情報</category>
<category lang="en">information</category>
</programme>
<programme start="zeitbla" stop="zeitbla2" channel="19">
<title>zweitertitelbla</title>
<desc>blablabeschreibung</desc>
<category lang="ja_JP">ニュース・報道</category>
<category lang="en">news</category>
</programme>
</tv>
php代码:
$domtemp = new domDocument;
$domtemp->load("file.xml");
$fullfile = simplexml_import_dom($domtemp);
foreach($fullfile->programme as $program){
$category = $program->xpath('//category[@lang="en"]');
echo $category[0]."\n";
}
我的问题是:
为什么我只从每个循环传递的第一个条目中获取类别?
输出:
information
information
编辑:
我已经解决了这个问题:
$domtemp = new domDocument;
$domtemp->load("file.xml");
$fullfile = simplexml_import_dom($domtemp);
foreach($sxe->programme as $program){
$program = simplexml_load_string($program->asXML());
$category = $program->xpath('//category[@lang="en"]');
echo "{$category[0]}\n";
但我仍然想知道为什么这不像我预期的那样工作。
问候
BluBb_MADe