我需要创建一个数组,其中前两列从 MySQL 数据库中填充,而其他 1440 列用零填充。请看我的代码。
前两列已正确填充,而 zeros(0,1440) 导致 Array[0]。结果,列数为 3 (Array[3]) 而不是 1442。
这是怎么回事?
$query2="SELECT resID, resTitle FROM my_db.resources;";
$result2=DatabaseConnector::ExecuteQueryArray($query2);
$i=0;
$resAlloc = array();
foreach ($result2 as $row):
$resAlloc[$i] = array($row['resID'],$row['resTitle'],zeros(0,1440));
$i++;
endforeach;
// Generate an array of zeros
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;
}
最佳答案
怎么样:
$query2="SELECT resID, resTitle FROM my_db.resources;";
$result2=DatabaseConnector::ExecuteQueryArray($query2);
$i=0;
$resAlloc = array();
foreach ($result2 as $row):
$resAlloc[$i][] = $row['resID'];
$resAlloc[$i][] = $row['resTitle']
for ($j=0; $j<1440; $j++)
{
$resAlloc[$i][] = 0;
}
$i++;
endforeach;
?
关于PHP:从多个来源填充数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10668680/