我使用“PHP内置Web服务器”配置在PhpStorm中本地托管PHP脚本。一个脚本需要很多内存,所以我在它的开头添加了ini_set('memory_limit', 8589934592); # 8GiB
(设置它有效,我用ini_get('memory_limit')
检查了它。)
但是当我请求引用url时,脚本的执行失败并在错误日志中显示以下错误消息:
PHP Fatal error: Out of memory (allocated 1793064960) (tried to allocate 8334 bytes) in ...
它只能分配约1.7GiB。
有谁知道,为什么会这样?我假设PHP内置Web服务器有内存限制,但我找不到任何相关内容。
PS:我使用的是PHP v5.6,Windows 8和PhpStorm 10.0.3
编辑: 我的电脑有大约10Gib可用RAM
答案 0 :(得分:3)
您是否以32位运行网络服务器?如果是这样,可能只允许使用max。 2 GB: How much memory can a 32 bit process access on a 64 bit operating system?
我认为您可以使用PHP_INT_SIZE常量检查: Checking if your code is running on 64-bit PHP