0
我试图从多个记录(不知道有多少记录可能在任何时间)使用while循环和array_fill
构建一个数组,但它没有按照我希望的方式工作。它是用每条记录覆盖数组,然后在while循环完成执行后数组中唯一的数据,是加载的最后一条记录。在while循环中使用array_fill
$reward
是被覆盖的变量。使我抓狂!我希望看到它将$reward
构建成由我正在查询的3个记录(在本例中)组成的合并数组。但它最终成为找到的最后一个记录。我究竟做错了什么?
while ($WhileLoop <= $PrizeCount) {
print "<!-- Loop # [" . $WhileLoop . "] -->\n";
$Prize1Credits = $PrizeRecord["Prize_Credits"];
$print "<!-- Cred # [" . $Prize1Credits . "] -->\n";
$Prize1ID = $PrizeRecord["Prize_ID"];
print "<!-- ID # [" . $Prize1ID . "] -->\n";
$reward = array_fill($ArrayIndex,$Prize1Credits,$Prize1ID);
print "<!-- IND # [" . $ArrayIndex . "] -->\n";
$ArrayIndex += $Prize1Credits;
$WhileLoop++;
$DBConnection->next_record();
$PrizeRecord = $DBConnection->Record;
}
我尝试的第一件事情之一是+ =操作数,它会引发一个致命的“你不能在数组中使用该操作数”类型的消息。但是,您的for循环(在Prize1Credits之后将逗号切换为分号)像魅力一样工作。谢啦! –
不客气。顺便说一句,你为什么迭代一个自定义变量'$ WhileLoop'?直到$ DBConnection-> next_record()返回一个像'while($ DBConnection-> next_record())'这样的值才能迭代吗? – mesutozer