我有一个游戏,每个玩家(共有5个玩家玩游戏)都有一个性能属性列表。它们列在下面的数组中:
$balance[$i]
,$marketshare[$i]
,$price[$i]
,$unitcost[$i]
$i
= 0,1,2,3,4。并代表每个游戏玩家。
例如$balance[0]
,$marketshare[0]
,$price[0]
,$unitcost[0]
第一个玩家的值$balance[1]
,$marketshare[1]
,$price[1]
,$unitcost[1]
是第二个球员的价值观等等。
teamID
是识别玩家的唯一ID。
我有一个表,我需要使用以下SQL将此数据插入。
for ($j=0;$j<6;$j++)
{
$value[0] = $profit[$j];
$value[1] = $marketPercent[$j];
$value[2] = $saleprice[$j];
$value[3] = $unitprice[$j];
$value[4] = "500";
$value[5] = "600";
for ($i=0;$i<6;$i++)
{
$setOutputs = mysql_query("
INSERT INTO `output`(`outputID`, `outputType`, `outputValue`,`teamID`)
VALUES (NULL, '$type[$i]', '$value[$i]','$teamID[$j]')
") or die($setOutputs."<br/><br/>".mysql_error());
}
}
游戏只有5个玩家所以我只需要团队中的$ j循环直到它达到0 - 5 $teamID[$j]
目前它运行到6并导致错误,因为该玩家没有数据。
如何修改我的代码才能执行此操作?
我确信这很简单,我无法理解它。
答案 0 :(得分:2)
您从零开始,因此将for循环的while部分更改为小于5.
循环的迭代:
0 - 1
1 - 2
2 - 3
3 - 4
4 - 5
因此,如果它&lt; 5,最后一次迭代将是你的第五次。
答案 1 :(得分:1)
首先,我是0,1,2,3,4,但你循环到5(即6个值,包括0)..
改变这个:
for ($i=0;$i<6;$i++)
到这个
for ($i=0;$i<5;$i++)
0-5也是6名球员,而不是5名,所以如果你有5支队伍,你想改变这个:
for ($j=0;$j<6;$j++)
到此:
for ($j=0;$j<5;$j++) //i.e. 0,1,2,3,4 == 5 teams
答案 2 :(得分:1)
我认为您需要将$j=0;$j<6;$j++
更改为$j=0;$j<5;$j++
。
这将给你0到4,包括5个不同的值 - 0也是一个值。