3

我使用“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 内置网络服务器有内存限制,但我找不到任何相关信息。


PS:我使用的是 PHP v5.6、Windows 8 和 PhpStorm 10.0.3


编辑:我的电脑有大约 10Gib 可用 RAM 可供使用

4

1 回答 1

3

您是否以 32 位运行网络服务器?如果是这样,它可能只允许使用最大值。2 GB: 32 位进程在 64 位操作系统上可以访问多少内存?

我认为您可以使用 PHP_INT_SIZE 常量检查这一点: 检查您的代码是否在 64 位 PHP 上运行

于 2016-03-16T10:35:30.963 回答