小编mif*_*ory的帖子

如何使用PHP制作大数组(26000 x 26000)?

我尝试用PHP创建数组.阵列的尺寸是26000 x 26000.是否可以使阵列变大?我已经尝试制作尺寸为10000 x 10000的数组,但程序一直告诉我:

致命错误:第24行的C:\ xampp\htdocs\matrix\index.php内存不足(分配1886388224)(试图分配24个字节)

我有8GB内存,我已经在php.ini中设置了memory_limit -1(apache配置).构建数组的代码是这样的:

function zeros($rowCount, $colCount)
{
    $matrix = array();
    for ($rowIndx=0; $rowIndx<$rowCount; $rowIndx++)
    {
        $matrix[] = array();
        for($colIndx=0; $colIndx<$colCount; $colIndx++)
        {
            $matrix[$rowIndx][$colIndx]=0;
        }
        var_dump(memory_get_usage());
    }
    return $matrix;
}

$matrix = zeros(25000,25000);
Run Code Online (Sandbox Code Playgroud)

我也尝试过使用SplFixedArray,但结果是一样的.请帮帮我,谢谢!:)

php arrays out-of-memory fatal-error memory-limit

5
推荐指数
1
解决办法
172
查看次数

标签 统计

arrays ×1

fatal-error ×1

memory-limit ×1

out-of-memory ×1

php ×1