fanelf.de: XML und leere Felder

Beitrag lesen

Wenn ich o.g. xml-Daten parse und mir die Werte in ein Array einlesen will wird mein Array nur mit 2 Werten gefüllt, und zwar mit 00:01 und 01:10.
Der mittlere Wert wird einfach übergangen, ich habe also keinen "leeren" Eintrag in meinem Array (was aber gewünscht ist!).

Ich habe folgendes im character_handler des xml-parsers versucht, leider ohne Erfolg:

if($data == '')
{
$duration[] = "leer";
}
else
{
$duration[]  = $data;
}

Hat jemand eine Idee, was man hier machen kann?

der sax-parser arbeitet ereignisorientiert.
wenn kein cdata vorhanden ist, kann auch kein cdata ereignis ausgelöst werden.

dann mußt du schon selbst das fehlen von cdata feststellen. entweder beim öffnenden tag bereits auf LEER setzen und mit vorhandenem cdata überschreiben, oder was schlechter ist, beim schließen des tags nachprüfen.