W trakcie pracy w Panelu Administracyjnym (joomla) pokazał się komunikat błędu:

Cytat
Fatal error: Allowed memory size of 8388608 bytes exhausted (tried to allocate) in ... database.php. on line 489

Pozwoliłem sobie na skócenie, w miejscu ... była podana ścieżka dostępu do pliku database.php

Moja interwencja u dostawcy hostingo skończyła sie otrzymaniem takiej informacji:

Cytat
Pana skrypt przekroczył limit pamięci. Limity są dosyć wysokie, więc prawdopodobnie jest to problem związany ze skryptem. Proszę zajrzeć do pliku wskazanego w komunikacie błędu.


Tak wiec szukająć wspomnianej linijki kodu posłużyłem sie Notatnikiem SP i znalazłem sam wiersz 489:
  1. <?php
  2. if ($key) {
  3. ?>

myślę, ze to jednak jest za mało i zacytuje tu większy fragment kodu z zaznaczeniem wspomnianego wiersza 489:
  1. <?php
  2. }
  3. /**
  4. * Load a list of database objects
  5. * @param string The field name of a primary key
  6. * @return array If <var>key</var> is empty as sequential list of returned records.
  7. * If <var>key</var> is not empty then the returned array is indexed by the value
  8. * the database key. Returns <var>null</var> if the query fails.
  9. */
  10. function loadObjectList( $key='' ) {
  11. if (!($cur = $this->query())) {
  12. return null;
  13. }
  14. $array = array();
  15. while ($row = mysql_fetch_object( $cur )) {
  16. // wiersz 489 // if ($key) {
  17. $array[$row->$key] = $row;
  18. } else {
  19. $array[] = $row;
  20. }
  21. }
  22. mysql_free_result( $cur );
  23. return $array;
  24. }
  25. /**
  26. * @return The first row of the query.
  27. */
  28. ?>


Mam do Państwa prośbę o wskazanie, co powinienem w tym kodzie zmienić, aby pobyć się komunikatu błedu?