变量存储和PHP内存不足错误


variable storage and php out of memory error

假设PHP内存限制设置为128M

现在假设你做

$v = "128 M worth of data";

这会导致PHP内存不足错误发生吗?

虽然有几个限制,但我认为您指的是可以使用ini_set设置的"memory_limit"值。那么答案实际上是否定的。

如果您将值设置为确切的限制,您将会很好(如果这是您的脚本中的所有内容)。但问题是,如果你用的字节比这个多1个字节。所以你不能再在你的脚本中做任何事情。如果你试图复制这个值或对它做一些事情,你就会超过限制,它就会崩溃。所以这样的字符串是没有用的

最近发布的这个问题有一些很好的答案:memory-get-peak-usage-with-real-usage

是的,它将失败并显示以下错误,您可以尝试:

致命错误:允许的内存大小为xxxxxx字节耗尽(试图分配xxxxxxx字节)

这是预期的结果,因为字符串的数据必须保存在某处->内存;)