我正在阅读这个XML文件
<?xml version="1.0" encoding="UTF-8"?>
<articlelist xml:lang="DE">
<articlegroup id="BDB">
<oldarticle>No</oldarticle>
<article ArticleNr="103154" ArtikelGruppenNr="BDB" ArtikelGruppenName="Instant-Kameras" SetArtikel="0">
<name>Fujifilm Instax Mini Hello Kitty Set</name>
<brand id="FUJ">Fujifilm</brand>
<tecdat>
<group name="Ausstattung">
<proberty name="Eingebautes Blitzgerät">Ja</proberty>
</group>
</tecdat>
<tecdat>
<group name="Stromversorgung">
<proberty name="Stromversorgung">2x Mignon (AA)</proberty>
</group>
</tecdat>
<tecdat>
<group name="Allgemein">
<proberty name="Farbe">rosa</proberty>
<proberty name="Breite (mm)">169</proberty>
<proberty name="Höhe (mm)">145</proberty>
<proberty name="Tiefe (mm)">69</proberty>
<proberty name="Gewicht (g)">395</proberty>
</group>
</tecdat>
<description><p><strong>Fujifilm Instax Mini Hello Kitty Set</strong></p>
<p><strong>Set inklusive Film, Sticker und Schlüsselband</strong></p>
<p>Hello Kitty ist eine tolle Begleiterin! Junge Mädchen mögen ihren Style und finden sie total niedlich. Mit ihren zahlreichen Extras im Hello Kitty Design ist sie die richtige Softbildkamera für tolle Schnappschüsse.</p>
<p><strong>Blitz zur optimalen Ausleuchtung</strong><br />
Da erscheint alles im besten Licht! Der Blitz der instax mini Hello Kitty sorgt für die optimale Bildausleuchtung.</p>
<p><strong>Manuelle Belichtungseinstellung</strong><br />
Mit der manuellen Belichtungseinstellung lässt sich die instax mini Hello Kitty spielend für alle Lichtverhältnisse einstellen.</p>
<p><strong>High-Key Aufnahmefunktion</strong><br />
Besonders kreative Aufnahmen gelingen mit der High-Key-Aufnahmefunktion. Sie beeindrucken mit besonders hellem und weichem Hintergrund.</p>
<p><strong>Fujinon-Objektiv</strong><br />
Das Fujinon-Objektiv ermöglicht besonders detailreiche Aufnahmen von Lieblingsmotiven.</p>
<p><strong>Bildzählwerk</strong><br />
Das eingebaute Bildzählwerk zeigt jederzeit präzise an, wie viele Aufnahmen noch gemacht werden können bevor ein neuer Film her muss.</p>
<p><strong>ACHTUNG!<br />
Für Kinder unter 3 Jahren nicht geeignet. Erstickungsgefahr wegen verschluckbarer Kleinteile.</strong></p>
<p> </p>
</description>
</article>
</articlegroup>
</articlelist>
这是我的代码:
$reader = new XMLReader();
$reader->open($extractedTechnicalFile);
while($reader->read()) {
$nodeName = $reader->name;
if($nodeName == 'brand') { // ok, it goes here }
if($nodeName == 'description') { // never goes here }
}
我可以阅读article
,brand
和name
节点,但它从不读取description
节点。
我确信我错过了文件中的内容,但是什么?我的英文文件也是如此,它使用完全相同的代码,所以它可能与语言有关。
感谢您的帮助!
答案 0 :(得分:2)
您应该使用您的html内容。由于html内容,xml解析器无法正确解析xml。请试试下面的xml;
<?xml version="1.0" encoding="UTF-8"?>
<articlelist xml:lang="DE">
<articlegroup id="BDB">
<oldarticle>No</oldarticle>
<article ArticleNr="103154" ArtikelGruppenNr="BDB" ArtikelGruppenName="Instant-Kameras" SetArtikel="0">
<name>Fujifilm Instax Mini Hello Kitty Set</name>
<brand id="FUJ">Fujifilm</brand>
<tecdat>
<group name="Ausstattung">
<proberty name="Eingebautes Blitzgerät">Ja</proberty>
</group>
</tecdat>
<tecdat>
<group name="Stromversorgung">
<proberty name="Stromversorgung">2x Mignon (AA)</proberty>
</group>
</tecdat>
<tecdat>
<group name="Allgemein">
<proberty name="Farbe">rosa</proberty>
<proberty name="Breite (mm)">169</proberty>
<proberty name="Höhe (mm)">145</proberty>
<proberty name="Tiefe (mm)">69</proberty>
<proberty name="Gewicht (g)">395</proberty>
</group>
</tecdat>
<description>
<![CDATA[
<p>
<strong>Fujifilm Instax Mini Hello Kitty Set</strong>
</p><p>
<strong>Set inklusive Film, Sticker und Schlüsselband</strong>
</p><p>Hello Kitty ist eine tolle Begleiterin! Junge Mädchen mögen ihren Style und finden sie total niedlich. Mit ihren zahlreichen Extras im Hello Kitty Design ist sie die richtige Softbildkamera für tolle Schnappschüsse.</p><p>
<strong>Blitz zur optimalen Ausleuchtung</strong>
<br />Da erscheint alles im besten Licht! Der Blitz der instax mini Hello Kitty sorgt für die optimale Bildausleuchtung.</p><p>
<strong>Manuelle Belichtungseinstellung</strong>
<br />Mit der manuellen Belichtungseinstellung lässt sich die instax mini Hello Kitty spielend für alle Lichtverhältnisse einstellen.</p><p>
<strong>High-Key Aufnahmefunktion</strong>
<br />Besonders kreative Aufnahmen gelingen mit der High-Key-Aufnahmefunktion. Sie beeindrucken mit besonders hellem und weichem Hintergrund.</p><p>
<strong>Fujinon-Objektiv</strong>
<br />Das Fujinon-Objektiv ermöglicht besonders detailreiche Aufnahmen von Lieblingsmotiven.</p><p>
<strong>Bildzählwerk</strong>
<br />Das eingebaute Bildzählwerk zeigt jederzeit präzise an, wie viele Aufnahmen noch gemacht werden können bevor ein neuer Film her muss.</p><p>
<strong>ACHTUNG!<br />Für Kinder unter 3 Jahren nicht geeignet. Erstickungsgefahr wegen verschluckbarer Kleinteile.</strong>
</p><p> </p>
]]>
</description>
</article>
</articlegroup>
</articlelist>