运行PHP程序时php 设置内存,通常会遇到“FatalError:Allowedmemorysizeofxxxxxxbytesexhausted”错误,这意味着PHP脚本使用了过多的显存,超出了系统其设置允许的最大显存。 要解决这个问题,首先需要检查你的程序是否分配了过多的显存。 如果程序没有问题,可以通过以下方法降低PHP显存限制(memory_limit)。
检查php的内存限制
为了查看这个值,您需要创建一个空的php文件,例如view-php-info.php。 然后粘贴上面的代码。
将此脚本放在您的 Web 服务器上,然后在浏览器中调用它。 这时,你可以看到你的PHP场景配置的信息,其中一项是关于“memory_limit”的,如右图:
注意:你可以使用这些方法查看php的其他参数设置,而不仅仅是memory_limit
memory_limit 应该设置为多少?
这完全服从您的应用程序的请求。 例如,Wordpress 需要 32MB 来运行核心代码。 Drupal6 要求该值至少为 16MB,建议将其设置为 32MB。 如果你安装了很多插件(plugins),特别是那些需要图像处理的模块,那么你可能需要128MB或更高的显存。
如何设置内存限制
方法一:php.ini
最简单或最常见的方法是查看 php.ini
1.首先找到对您的网站有效的php.ini文件。 因为有多个地方可以设置php参数,所以找到正确的配置文件并修改它是第一步。 如果你在上面的方法中创建了一个php文件,查看其配置参数,可以找到“LoadedConfigurationFile”项。 下面是一个反例:
对于Linux用户,可以通过执行“php-i|grepLoadedConfigurationFile”找到对应的配置文件。 对于 Windows 用户,您可以尝试查看 php 安装目录中的 php.ini。
2. 编辑php.ini 在php.ini 中php 设置内存,找到“memory_limit”项。 如果没有,您可以在文件末尾自行降低此参数。以下是一些设置基准
内存限制=128M; 您可以将 128M 更改为您想要设置的任何值
保存文档
3.重新启动Web服务器如果Web服务器使用Apache,则执行: