我们什么时候需要在ini中使用大于post_max_size的memory_limit

时间:2017-11-10 04:47:43

标签: php wordpress

我遇到了wordpress bacip插件的问题,以压缩名称不是utf8编码的文件和文件夹,我们最终得出的结果是post_max_size大于memory_limit,解决方案提供商说它是压缩失败的原因..

请帮助我理解这背后的原因,如果是这样的话。

2 个答案:

答案 0 :(得分:1)

如果您的输入大于您的存储空间,那么PHP将导致致命错误。

它类似于某人递给你一本教科书并告诉你把它的内容复制到一张小纸上。你没有足够的空间;你必须放弃。

答案 1 :(得分:1)

post_max_size是你收到一个帖子请求的帖子限制,例如50mb的帖子并存储在全局变量中作为$ _POST [' message']而你只有memory_limit为32mb它会误报它& #39; s因为每个进程只能分配总共32mb。在这种情况下,您在单个请求中使用50mb +。

真实的例子,如果int的大小为4字节,并且你有一个int的数组,其长度是8,你在memory_limit中消耗32byt

<?php
$intArray = range(1, 8); // array(1, 2, 3, ..., 8) consumes 32bytes
$_POST['message'] = range(1, 8); // consumes 32bytes also