0

我不知道出了什么问题,但为什么我有未定义的索引,因为我已经转储了我的数组并且它的值可能是错误的或我丢失了?

//这里是截图: 在此处输入图像描述

//这是我的php代码:

$result1 = array(); //for player 1
$result2 = array(); //for player 2

$data_blue = $db->dataWarrior($battle,$blue_name,$blue_type);

foreach($data_blue as $blue){
    $result1[] = $blue;
}

$data_red = $db->dataWarrior($battle,$red_name,$red_type);

foreach($data_red as $red){
    $result2[] = $red;
}

var_dump($result1);

//variables to identify turns 1=turn
$warrior_1 = 0;
$warrior_2 = 0;

//compare speed
if($result1['speed']>$result2['speed']){ //this is the undefined index
    $warrior_1 = 1;
    $warrior_2 = 0;
}
4

2 回答 2

3

这一行:

$result1[] = $blue;

将一个数组嵌套在另一个数组中。

if($result1[0]['speed']>$result2[0]['speed']){

或者只是分配而不是附加在前面的行中。

$result1 = $blue;
于 2012-09-16T17:45:36.033 回答
3

您的数组以索引 0 开始。

尝试

if($result1[0]['speed']>$result2[0]['speed']){
于 2012-09-16T17:46:14.983 回答