Ein Bug in PHP?
-
Version 4.3.3
Ich bekomme ein XML-File rein
<?xml version="1.0" encoding="UTF-8"?>
<MESSAGES>
<SMS2HTTP_MSG>
<TIMESTAMP>30.06.2004 16.14.51</TIMESTAMP>
<RECEIVER>123456</RECEIVER>
<ORIGINATOR>004916</ORIGINATOR>
<SOURCE_PRV>80</SOURCE_PRV>
<SMS TYPE="ALPHANUM">Hallo test</SMS>
</SMS2HTTP_MSG>
</MESSAGES>Um das zu Parsen verwendem ich die Funktionen von PHP
Hier wird bei TAG <SMS> die Handlerroutine nur einmal aufgerufen und der Text übergeben.
xml_set_character_data_handler registriert die Routine.Soweit geht alles
Sieht das XMLfile so aus
<TIMESTAMP>30.06.2004 16.14.51</TIMESTAMP>
<RECEIVER>123456</RECEIVER>
<ORIGINATOR>004916</ORIGINATOR>
<SOURCE_PRV>80</SOURCE_PRV>
<SMS TYPE="ALPHANUM">Hallo &qout; test</SMS>
</SMS2HTTP_MSG>
</MESSAGES>Wird die Routine 3 Mal aufgerufen.
Das &qout; ist utf_8 encodet.
Ich bekomme dannHallo " test
zurück
Frage mich wieso der Parser vor den $qout nach diesem und zum Schluß nochmals aufruft.
Dachte es wird alles zwischen den TAGS zurückgegeben.
Macht er ja beim ersten XML-File auch nicht.