我想声明SplFixedArray();节省内存消耗。但这是致命的错误。
$items=new SplFixedArray();
echo "Array Started...";
for($h=0;$h<5000;$h++)
{
for($i=0;$i<24;$i++)
{
$items[$h][$i]=$objSheet->getCellByColumnAndRow($i,$h+1)->getValue();
}
}
如果不声明new SplFixedArray();
错误:
致命错误:未捕获的异常'RuntimeException',消息为'Index /home/twa/files.php:168无效或超出范围堆栈跟踪:#0 /home/twa/files.php(168):未知()#1 {main}被投入 第168行/home/twa/files.php
$items=new SplFixedArray(SplFixedArray());
也失败了......
请告诉我正确的语法......
答案 0 :(得分:2)
$items = new SplFixedArray(5000);
for ($h=0; $h<5000; $h++) {
$items[$h] = new SplFixedArray(24);
for ($i=0; $i<24; $i++) {
$items[$h][$i] = $objSheet->getCellByColumnAndRow($i,$h+1)->getValue();
}
}