Hab da ein Problem ...
Ich nutze google chart tool um paar Statistiken zu erstellen. Alles io soweit.
Aber bei der eigentlichen Arbeit - das Erstellen der Daten über SQL/PHP - komme ich ans Memory Limit.
Es sind viele Daten (über Jahre) aber das sollte ja trotzdem kein Problem sein.
Grober Ablauf und hab auch mal die Memory usage mitschreiben lassen:
Code
start: 1.71 MiB
SQL before loading: BFBC2: 1.71 MiB
SQL after loading: BFBC2: 8.07 MiB
SQL before loading: BF3: 8.9 MiB
SQL after loading: BF3: 97.98 MiB
SQL before loading: MOHW: 108.98 MiB
SQL after loading: MOHW: 108.99 MiB
SQL before loading: CRY3: 97.16 MiB
SQL after loading: CRY3: 97.16 MiB
after creating $games array: 97.16 MiB
foreach() Battlefield Bad Company 2: 97.16 MiB
foreach() Battlefield Bad Company 2 / 2013: 97.16 MiB
foreach() Battlefield 3: 97.17 MiB
foreach() Battlefield 3 / 2013: 97.17 MiB
foreach() Medal of Honor Warfighter: 97.17 MiB
foreach() Medal of Honor Warfighter / 2013: 97.17 MiB
foreach() Crysis 3: 97.17 MiB
foreach() Crysis 3 / 2013: 97.17 MiB
after foreach(): 97.17 MiB
filled empty game/date with zeros: 1.77 MiB
after creating columns/colors/data: 1.77 MiB
after drawing charts: 1.78 MiB
memory peak: 109.27 MiB
Alles anzeigen
Warum ist bei "filled empty game/date with zeros:" (Zeile 20), wo nichts mehr geladen wird aber trozdem alle Daten nochmal durchlaufen werden,
der RAM aufeinmal wieder "leer" ?
Der max ram in PHP steht auf 128M. Kann also nicht mehr Daten verarbeiten, ohne die config in php zu ändern.
Wäre ja kein Thema, aber ich möcht ja rausbekommen, wo der Speicher (sinnlos?) belegt wird.
Jemand eine Idee?