Почему этот код xmlreader не работает?
У меня есть файл, который выглядит так:
<ExternalPage about="http://animation.about.com/">
<d:Title>About.com: Animation Guide</d:Title>
<d:Description>Keep up with developments in online animation for all skill levels. Download tools, and seek inspiration from online work.</d:Description>
<topic>Top/Arts/Animation</topic>
</ExternalPage>
<ExternalPage about="http://www.toonhound.com/">
<d:Title>Toonhound</d:Title>
<d:Description>British cartoon, animation and comic strip creations - links, reviews and news from the UK.</d:Description>
<topic>Top/Arts/Animation</topic>
</ExternalPage>
и т.п.
Я пытаюсь получить URL-адрес "about", а также вложенный заголовок и описание. Я попробовал следующий код, но все, что я получаю, это несколько штрихов ...
$reader = new XMLReader();
if (!$reader->open("dbpedia/links/xml.xml")) {
die("Failed to open 'xml.xml'");
}
$num=0;
while($reader->read() && $num<200) {
if ($reader->nodeType == XMLReader::ELEMENT && $reader->name == 'ExternalPage') {
$url = $reader->getAttribute('about');
while ($xml->nodeType !== XMLReader::END_ELEMENT ){
$reader->read();
if ($reader->nodeType == XMLReader::ELEMENT && $reader->name == 'd:Title') {
$title=$xmlReader->value;
}
elseif ($reader->nodeType == XMLReader::ELEMENT && $reader->name == 'd:Description') {
$desc=$xmlReader->value;
}
}
}
$num++;echo $url."-".$title."-".$desc."<br />";
}
$reader->close();
Я новичок в xmlreader, поэтому буду признателен, если кто-то сможет понять, что я делаю не так.
Примечание: я использую xmlreader, потому что файл огромен (миллионы строк).
РЕДАКТИРОВАТЬ: начало файла выглядит так:
<?xml version="1.0" encoding="UTF-8"?>
<RDF xmlns:r="http://www.w3.org/TR/RDF/" xmlns:d="http://purl.org/dc/elements/1.0/" xmlns="http://dmoz.org/rdf/">
<!-- Generated at 2013-02-10 00:03:45 EST from DMOZ 2.0 -->
<Topic r:id="">
<catid>1</catid>
</Topic>
<Topic r:id="Top/Arts">
<catid>381773</catid>
</Topic>
<Topic r:id="Top/Arts/Animation">
<catid>423945</catid>
<link1 r:resource="http://www.awn.com/"></link1>
<link r:resource="http://animation.about.com/"></link>
<link r:resource="http://www.toonhound.com/"></link>
<link r:resource="http://enculturation.gmu.edu/2_1/pisters.html"></link>
<link r:resource="http://www.digitalmediafx.com/Features/animationhistory.html"></link>
<link r:resource="http://www.spark-online.com/august00/media/romano.html"></link>
<link r:resource="http://www.animated-divots.net/"></link>
</Topic>
<ExternalPage about="http://www.awn.com/">
<d:Title>Animation World Network</d:Title>
<d:Description>Provides information resources to the international animation community. Features include searchable database archives, monthly magazine, web animation guide, the Animation Village, discussion forums and other useful resources.</d:Description>
<priority>1</priority>
<topic>Top/Arts/Animation</topic>
</ExternalPage>
и т.д