Why does my PHP script fail with 'Fatal error: Allowed memory size of 8388608 bytes exhausted'? Print

  • 0


PHP has a built-in limit on the amount of memory it will allocate. If that limit is reached, the process will exit with this error message. This is usually the result of the PHP script trying to load a large file, such as an image, into memory all at once. While it is better if you can arrange for the script not to do such things, it is also possible to increase the memory limit to avoid this problem. To do that, edit (or create in your script's folder if it does not exist) the php.ini file with your PHP scripts (create it if it does not exist) and add the following line:

memory_limit=32M
You should replace the '32' with whatever value is appropriate. The default is 32M (32 megabytes)

If this does not resolve the problem, you can also increase the web server memory limit by editing (or creating in your script's folder if it does not exist) the ".htaccess" file and adding the following line:

RLimitMem max
Both php.ini and .htaccess files should be created in plain text (for example with Notepad on Windows, or TextEdit in Plain Text mode on a Mac) to avoid any formatting information being saved. Rich text editors such as WordPad, MS Word, and TextEdit in its default Rich Text mode will produce unreadable files.

Was this answer helpful?

« Back