phpbar.de logo

Mailinglisten-Archive

[php] Speicherverbrauch von Arrays

[php] Speicherverbrauch von Arrays

Jan Piotrowski piotrowski at gmail.com
Mit Jul 7 01:43:26 CEST 2004


Hallo,

ich hatte ja schon einen anderen Thread gestartet über einen seltsamen
Scriptabbruch. Dort hat sich nun herausgestellt, dass das Array das
ich da zusammengebastelt habe einfach zu groß wurde. Da kommt nun aber
eine gründsätzliche Frage auf die ich nicht beantworten kann:

Wieso braucht ein Array mit 2 000 000 (2 Millionen) Einträgen zu je 6
Zeichen über 150 MB im Speicher?

Wenn ich das selbe Array mit print_r ausgebe und in eine Textdatei
speichere braucht es keine 35 MB.
Allein schon wenn ich das von Hand rechne kommt was viel niedrigeres raus:
2 000 000 (Zeilen) * 6 (durchschnittliche Zeichenzahl der Werte) = 12 000 000
2 000 000 * 6,5 (durchschnittliche Zeichenzahl der Schlüssel) = 13 000 000
Zusammen ergibt das einen Wert von 25 000 000 Bytes, 25 000 Kilobytes
oder 25 Megabytes, wenn man mal mit 1000 rechnet.

Wieso braucht das ganze im Speicher aber so viel Platz? Nicht böse
sein wenn die Frage aus purem Unwissen oder Dummheit besteht. Ich
lerne gerne dazu :)

Grüße, Jan

php::bar PHP Wiki   -   Listenarchive