Sven Rautenberg: Maximale Arraygröße?

Beitrag lesen

Moin!

Ich habe mich gefragt... wie groß kann eigentlich ein Array bei PHP so werden? Logischerweise gibt es nicht wirklich Größeneinschränkungen wie man das von Variablen o.ä. her kennt. Wenn ich aber, sagen wir mal, eine Tabelle mit 10 Textspalten à la longtext und 5000 Einträgen in ein Array einlese, kanns schon mal schief gehen, den Server in die Knie zwingen o.ä.?

PHP hat Maximalwerte für den belegbaren Speicherplatz. Typische Werte wären 2 oder 8 MB. Dementsprechend hast du bei dem Versuch, größee Datenmengen in Variablen zu speichern, mit Sicherheit ein Problem.

Die Werte lassen sich natürlich konfigurieren, wenn du entsprechende Zugriffsrechte hast, und es notwendig erscheint.

Datenbankabfragen, die mit mysql_query() gemacht werden, werden übrigens sofort komplett in einen PHP-Puffer geladen, damit die Datenbank wieder freigegeben werden kann. Solltest du aber Querys machen, die für den PHP-Speicher zu groß sind, ist irgendeine Aufteilung in Stücke notwendig. Beispielsweise mit mysql_unbuffered_query(). Das hat gewisse Nachteile, nutzt aber immer nur den Speicherplatz für einen Datensatz, nicht für die Gesamtmenge.

- Sven Rautenberg

--
"Love your nation - respect the others."