dedlfix: PHP serialize und Textdatei als Datenbankersatz?

Beitrag lesen

Hi!

Ooch, gerade Arrays lassen sich in Dateien ganz hervorragend speichern ;)
Jedes Art Daten lässt sich ganz hervorragend in Dateien speichern, wenn man sie vorher serialisiert. Was sollte bei PHP-Arrays, die ja keine Arrays im herkömmlichen Sinne sind, sondern komplex strukturierte Gebilde sein können, besonders gut geeignet sein?
Zur "hervorragenden Datenspeicherung" gehört für mich allerdings in der Hauptsache die ungehinderte Zugriffsmöglichkiet, also möglichst ein "Random Access".

Ja, da stimme ich dir zu. Nur sind PHP-Arrays nicht dafür geschaffen, dass man sie einfach so in dieser Form ablegen kann. Das geht nur, wenn man sich strikt an ein paar Regeln hält: Die Struktur der Daten muss immer gleich sein, ebenso ihre Größe. Auch Strings dürfen die vorher festgelegte Länge nicht überschreiten. Und dann muss man sowas wie pack() verwenden, dem man aber nur einzelne Werte und keine Arrays übergeben kann. Mit call_user_func_array() bekommt man da was hin, aber schon bei zweidimensional aufgebauten Arrays hat man wieder das Nachsehen in Form einer selbst zu schreibenden Schleife, mit der man sich durch eine der beiden Dimensionen bewegen muss. "Ganz hervorragend" geht deutlich anders. Mit einem serialize() hat man die komplexeste und unregelmäßigste Struktur in einem Rutsch geschrieben. Nur wahlfreier Zugriff ist dann nicht möglich.

Lo!