首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >为什么官方的PHP手册错误地声明,“一般来说,'memory_limit‘应该大于’post_max_size‘?”

为什么官方的PHP手册错误地声明,“一般来说,'memory_limit‘应该大于’post_max_size‘?”
EN

Stack Overflow用户
提问于 2018-08-24 01:52:20
回答 1查看 61关注 0票数 0

seeing this recent SuperUser question on the role memory_limit plays in file upload limits之后,我在这里发布了这个问题。

官方的PHP手册在post_max_size下声明了以下内容

一般来说,memory_limit应该比post_max_size大。

如果你在某种程度上理解了PHP,什么是memory_limit,什么是post_max_size,这个官方的建议完全没有任何意义。PHP是一个与memory_limit进程内存限制相关的设置,而post_max_size只关心通过PHP上传到文件系统的项目的最大大小。

现在,人们可以将一个大的数据发送到PHP脚本,并将其存储在PHP内存中。但几乎没有人会这么做。当绝大多数文件都是PHP脚本的POSTed时,该文件通过PHP流式传输并保存到文件系统中。

那么为什么这是“一般意义上的…”呢?给出建议了吗?或者,在经过多年的20+开发之后,我是不是完全疯了,不知何故,我能够在不让memory_limit超过post_max_size的情况下将大量文件上传到LAMP堆栈应用程序

如果找到了a similar question herethis answer以及as this other answer,这就证实了我所说的话。见鬼,here is another answer to another question触及了答案明确表示“不”的主题。

那么,为什么官方的PHP手册声明memory_limitpost_max_size有关呢?

是的,我知道在某些情况下,“一般说来,…”建议是有效的,但我发现有多少在线资源(见上)与PHP手册中所说的相矛盾。也许“一般”的建议应该针对不同的用例做出更具体的建议?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-08-24 01:58:22

因为如果您使用$_POST数组,它需要存储在内存中,特别是对于大型POST数据。因此,它需要放入内存。

您还可以使用流包装器php://input而不是$_POST来减少内存使用。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51991616

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档