【发布时间】:2013-05-08 21:02:13
【问题描述】:
假设 PHP 内存限制设置为 128M
现在假设你这样做了
$v = "128 M worth of data";
这会导致发生 PHP 内存不足错误吗?
【问题讨论】:
-
你说的是哪个限制?准确地说
标签: php memory memory-management fatal-error
假设 PHP 内存限制设置为 128M
现在假设你这样做了
$v = "128 M worth of data";
这会导致发生 PHP 内存不足错误吗?
【问题讨论】:
标签: php memory memory-management fatal-error
虽然有几个限制,但我想您的意思是可以使用ini_set 设置的“memory_limit”值。那么答案实际上是否定的。
如果您将该值设置为确切的限制,您会没事的(如果这是您脚本中的所有内容)。但问题是当您使用多于 1 个字节时。所以你不能再在你的脚本中做任何事情。如果您尝试复制该值或对其进行某些操作,您将超过限制并且它会崩溃。所以有这样的字符串是没用的。
最近发布的这个问题有一些很好的答案:memory-get-peak-usage-with-real-usage
【讨论】:
是的,它会失败并出现以下错误,你可以试试:
致命错误:xxxxxx 字节的允许内存大小已用尽(试图分配 xxxxxxx 字节)
这是预期的结果,因为字符串的数据必须保存在某个地方 -> 在内存中;)
【讨论】: