Så här löser du PHP Dödligt fel Tillåtet minnesstorlek på 8388608 byte utmattad
ini_set ( ”memory_limit”,”16M”);
Detta ställer in din minnesgräns till 16 MB, snarare än 8 MB. Du kan, och borde, fina med det här numret så att det är så lågt som möjligt utan att upprepa det felmeddelandet. Detta ändrar bara minnesgränsen för den specifika PHP-filen.
Alternativt kan du ändra din php.ini-fil för att öka minnesgränsen. Detta påverkar alla skript på din server. Öppna bara php.ini och hitta raden som läser "memory_limit" och ändra den:
memory_limit = 16M
Jag har märkt i min egen PHP.ini-fil att min standard är mycket högre vid 128M. Så om jag någonsin skulle få det här felmeddelandet skulle det läsa: "Felaktigt fel: Tillåtet minnesstorlek på 134217728 bytes utmattad ..." och uppenbarligen ett mycket större problem. Men det har samma lösning som "Fatal error: Tillåtet minnesstorlek på 8388608 bytes utmattad ..." eller "Fatal error: Tillåtet minnesstorlek på 16777216 bytes utmattad ..." eller vad som helst. Uppenbarligen var default_limit-standarden upped från 8M till 16M i PHP 5.2.0 och är nu 128M för PHP 5.3.0, vilket skulle förklara varför du kanske inte får det här felmeddelandet alls.
Du kan också inaktivera minnesgränsen genom att ange memory_limit till -1 i PHP.ini.
memory_limit = -1
Detta är dock vanligtvis inte en bra idé, av uppenbara skäl.
Obs! Du kan också använda linjen memory_limit på din .htaccess-sida.
Kom nu ihåg, det här är bara en lösning. Egentligen bör ditt PHP-skript inte vara över 8 MB, om inte dina uppladdningsfiler eller gör något annat som uppenbarligen tar upp mycket minneanvändning. Vad du verkligen ska göra försöker lista ut varför ditt skript använder så mycket minne och försöker fixa det. Ett sätt att räkna ut hur mycket minne ditt PHP-skript använder är att använda funktionen memory_get_usage () PHP. E-posta det bara när som helst i ditt skript för att ta reda på var din minnesanvändning spikar:
echo memory_get_usage ();
Om du får detta felmeddelande i Drupal eller Joomla är den troliga skyldige en ny modul eller ett paket. Till exempel i Drupal laddas admin / modulen sidan varje modul i din Drupal-installation, vilket kan bli hårigt om en anpassad modul är buggy, korrupt eller hackad. Försök att inaktivera moduler en efter en för att identifiera vilka som leder festen ner. Dessutom kommer vissa webbhotell att ignorera dina försök att ändra minnesgränserna för din PHP-kod så att du kanske behöver kontakta din hosting support för att hjälpa dig. Jag har hittat ibland måste jag redigera php.ini-filen och ibland sätta koden i .htaccess-filen. Hur som helst, förhoppningsvis är den här informationen tillräckligt för att få dig på väg!