Hi Klaus,
Das einzige Trennzeichen, daß mir einfällt, daß weder im URL noch im Useragent vorkommen kann, ist das \n.
Au ja - weil er das Trennzeichen von HTTP-Headern ist, richtig.
Warum also nicht den Log so aufbereiten, daß \n das
'Spaltentrennzeichen' ist und \n\n das 'Zeilentrennzeichen'?
Durch Änderung des INPUT_RECORD_SEPARATOR könntest Du dann
auch wieder 'zeilenweise' einlesen.
Das ist auf jeden Fall eine Idee, die ich mir durch den Kopf gehen lassen werde - auch wenn mir die Idee, eine logische auf mehrere physikalische Zeilen zu verteilen, nicht so spontan gefällt. (Für andere Benutzer sähe das dann doch sehr verwirrend aus.)
Inzwischen habe ich allerdings ein anderes Zeichen mit einer besonderen Eigenschaft gefunden, nämlich das '#'. Ein Browser sollte dieses Zeichen _eigentlich_ niemals als Bestandteil eines URL senden, weil es für ihn eine definierte, andere Bedeutung hat (die Abtrannung eines dokument-lokalen Ankers vom Dokument-URL). Kann jemand diese Idee widerlegen? (Hoffentlich nicht ... ;-)
Und wenn ich den URL zuverlässig parsen kann, dann ist mein Problem ja gelöst - _ein_ unbekanntes Feld (den UserAgent) halte ich aus.
Viele Grüße
Michael