Moin!
Ist das (1024 Byte) die Obergrenze, was maximal in einem Event als Textmenge zurückgegeben wird, oder hast Du die Zahl einfach mal in den Raum geworfen?
Nein, das ist eine willkürlich gewählte Zahl. Sieht man oft in Beispielen, die fgets() etc. verwenden. Genauso häufig wird (in Beispielen) aber die gesamte Datei in einem String eingelesen.
Was jeweils sinnvoller ist, ist in erster Instanz Geschmackssache, in zweiter Instanz wird das von der verfügbaren Speichergröße in Relation zur erwarteten Dateigröße bestimmt (megabytegroße Dateien auf diese Weise einzulesen ist keine so gute Idee, wenn das Skript dabei ins Memory-Limit kommt).
Aber den Sinn einer Zerstückelung bei Sonderzeichen sehe ich immer noch nicht.
Keine Ahnung, was SAX an der Stelle intern macht. Ich vermute mal, dass an dieser Stelle Prüfroutinen anspringen, die das Mehr-Byte-Zeichen auf Zulässigkeit checken. Alles bis dahin wird schon mal dem Eventhandler übergeben, dann erst wird geschaut, ob ein gültiges UTF-8-Zeichen vorliegt.
xml_set_character_data_handler()
Genau dort. :) http://de.php.net/manual/en/function.xml-set-character-data-handler.php
Das sehe ich nicht. Ich habe die Offline-Version des PHP-Manuals. Vielleicht ist meine Version veraltet?
Dein Text stammt aus der Hauptseite von SAX. Mein Text aus der Beschreibung von xml_set_character_data_handler().
Es ist immer eine gute Idee, die Online-Version zu checken und eine Offline-Version möglichst aktuell zu halten.
- Sven Rautenberg
"Love your nation - respect the others."