当用户在我的网站上传图像时,我收到此错误.
错误消息是"PHP致命错误:内存不足(分配80740352)(试图分配12352字节)/ home ......."我如何使用php.ini解决这个问题?
这是我目前上传的php.ini设置
upload_max_filesize = 2000M ;
post_max_size = 2000M
max_file_uploads = 8
Run Code Online (Sandbox Code Playgroud)
还有什么想法我需要添加什么才能解决这个错误?
小智 11
set_time_limit(0);
ini_set('memory_limit', '20000M');
Run Code Online (Sandbox Code Playgroud)
在脚本的顶部.相应地更改20000M.
Emi*_*röm 10
最佳memory_limit值取决于您对上传文件的操作.您是使用file_get_contents还是GD库将文件读入内存?在这种情况下,将memory_limit增加到至少与upload_max_filesize相同,最好是更多.
如果您使用GD,请记住GD将整个图像保留在内存中未压缩.这意味着它需要在width * height * bit-depth例如1024*768*32 = 25 165 824 bits = 3 MB屏幕截图的范围内存储,或者对于1400万像素图像需要55 MB的存储空间.
某些操作可能需要创建映像的副本,因此请考虑将memory_limit设置为将映像保留在内存中所需的两倍.另外,如果不需要,请确保不要立即将所有图像加载到内存中.完成图像处理后,可以通过调用句柄上的imagedestroy来释放GD使用的内存.
| 归档时间: |
|
| 查看次数: |
70184 次 |
| 最近记录: |