PHP 上传文件 Allowed memory size of 134217728 bytes exhausted

当PHP项目处理大数据时遇到'Allowed memory size of 134217728 bytes exhausted'错误,可通过检查并调整php.ini中的'memory_limit','upload_max_filesize'和'post_max_size'等配置来解决。确保post_max_size大于或等于upload_max_filesize,并根据需求适当调整memory_limit。同时,max_execution_time和max_input_time也会影响脚本运行。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

        上线的项目数据量很大,php突然给报了这么一个错,“ Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 32 bytes) ”  原来是因为php使用的内存超出了系统对其设置的允许最大内存。

         检查php内存限制值

         在php文件中输入

<?php
   phpinfo();
?>

然后浏览器访问下这个文件,你就会看到关于php版本的信息,其中 memory_limit 就是你现在设置的内存值,如下图:

     

         修改 php.ini   中 memory_limit    脚本运行最大消耗的内存  的值就好。


PHP其他大小限制:

文件 php.ini

max_execution_time = 30   每个脚本运行的最长时间  单位 s 。0 没有限制。

max_input_time = 60    每个脚本可以消耗的时间  单位 s

post_max_size = 8M      表单(post方式)提交的最大字节长度 ,  是针对整个表单的提交数据进行限制( 例如提交的标题等 )

upload_max_filesize = 2M     上传文件的最大许可大小

upload_tmp_dir       上传文件放置的临时目录 , 未指定则使用系统默认位置。

 

注意:

1、需要保证  post_max_size >= upload_max_filesize

2、如果启动了内存限制 , 那么 上传文件的大小会受到内存的影响。一般  memory_limit  >  post_max_size

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值