for($i=0;$i<0x40000001;$i++){
$style[$i]="";
}怎么样能够将数组的个数申请达到0x40000001,而不消耗内存。虚拟机会报错,

解决方案 »

  1.   

    VirtualAlloc() failed: [0x00000008] 存储空间不足,无法处理此命令。
    VirtualAlloc() failed: [0x00000008] 存储空间不足,无法处理此命令。PHP Fatal error:  Out of memory (allocated 811597824) (tried to allocate 805306
    76 bytes) in C:\Users\yaozhihua\Desktop\php-7.0.14-Win32-VC14-x86\test.php on l
    ne 5Fatal error: Out of memory (allocated 811597824) (tried to allocate 805306376 b
    tes) in C:\Users\yaozhihua\Desktop\php-7.0.14-Win32-VC14-x86\test.php on line 5
      

  2.   

    扩大 php 可用内存(memory_limit)echo 811597824 / 1024 / 1024; //774M显然这是操作系统提供给 php 的实际可用内存的总和,不可能再通过环境配置再扩大了,因为 php 解析程序本身也需要使用内存
      

  3.   

    再有,错误信息 Fatal error: Out of memory (allocated 811597824) (tried to allocate 805306376 btes)
    递增 805306376 btes 显然不是你示例的代码那么简单
      

  4.   

    可以写入redis