在php中通过2D数组迭代添加分数

在php中通过2D数组迭代添加分数,php,arrays,iterator,Php,Arrays,Iterator,我试图遍历一个数组,该数组包含循环赛中不同玩家的分数。我想创建另一个数组,它基本上是一个阶梯,列出每个玩家及其总分 我的分数表如下所示: id  Home Home Away Away _Name _Score _Name _Score ----------------------------------- 1 Mark NULL Darren NULL 2 Andrea 2 Greg

我试图遍历一个数组,该数组包含循环赛中不同玩家的分数。我想创建另一个数组,它基本上是一个阶梯,列出每个玩家及其总分

我的分数表如下所示:

    id  Home    Home    Away    Away
        _Name   _Score  _Name   _Score
    -----------------------------------
    1   Mark    NULL    Darren  NULL
    2   Andrea  2       Greg    7
    3   Claire  2       Test 6  3
    4   Mark    NULL    Andrea  NULL
    5   Claire  NULL    Darren  NULL
    6   Test 6  NULL    Greg    NULL
    7   Mark    NULL    Claire  NULL
    8   Test 6  NULL    Andrea  NULL
    9   Greg    NULL    Darren  NULL
    10  Mark    NULL    Test 6  NULL
    11  Greg    NULL    Claire  NULL
    12  Darren  NULL    Andrea  NULL
    13  Mark    NULL    Greg    NULL
    14  Darren  NULL    Test 6  NULL
    15  Andrea  NULL    Claire  NULL
<?php 
for ($i=0; $i<count($names); $i++) {
    print($names[$i]);
    echo " - ";
    $score = 0;
    for ($j=0;$j<count($rows);$j++) {
        if ($rows[$j][1] = $names[$i]) {
            $score = $score + $rows[$j][2];
        }
        if ($rows[$j][3] = $names[$i]) {
            $score = $score + $rows[$j][4];
        }

    }
    print($score);

    echo "<br><br>";
}
?>
我可以很好地将其放入一个名为$rows的15 x 5数组中。我还可以将所有不同的玩家名称放入一个名为$names的漂亮的6x1数组中。我想迭代$names,每当主客场球员等于names值时,将主客场球员的得分相加,从而计算他们的总得分

我的代码如下所示:

    id  Home    Home    Away    Away
        _Name   _Score  _Name   _Score
    -----------------------------------
    1   Mark    NULL    Darren  NULL
    2   Andrea  2       Greg    7
    3   Claire  2       Test 6  3
    4   Mark    NULL    Andrea  NULL
    5   Claire  NULL    Darren  NULL
    6   Test 6  NULL    Greg    NULL
    7   Mark    NULL    Claire  NULL
    8   Test 6  NULL    Andrea  NULL
    9   Greg    NULL    Darren  NULL
    10  Mark    NULL    Test 6  NULL
    11  Greg    NULL    Claire  NULL
    12  Darren  NULL    Andrea  NULL
    13  Mark    NULL    Greg    NULL
    14  Darren  NULL    Test 6  NULL
    15  Andrea  NULL    Claire  NULL
<?php 
for ($i=0; $i<count($names); $i++) {
    print($names[$i]);
    echo " - ";
    $score = 0;
    for ($j=0;$j<count($rows);$j++) {
        if ($rows[$j][1] = $names[$i]) {
            $score = $score + $rows[$j][2];
        }
        if ($rows[$j][3] = $names[$i]) {
            $score = $score + $rows[$j][4];
        }

    }
    print($score);

    echo "<br><br>";
}
?>

请提供帮助:)

您忘记使用
=
而不是
=
进行相等性检查。您应该将错误报告设置为
E|u ALL | E_NOTICE
,以便即使这些错误也将作为通知报告。虽然它是有效的代码,但可能不是您想要做的。

您忘记了使用
=
而不是
=
进行相等性检查。您应该将错误报告设置为
E|u ALL | E_NOTICE
,以便即使这些错误也将作为通知报告。虽然它是有效的代码,但可能不是您想要做的。

您忘记了使用
=
而不是
=
进行相等性检查。您应该将错误报告设置为
E|u ALL | E_NOTICE
,以便即使这些错误也将作为通知报告。虽然它是有效的代码,但可能不是您想要做的。

您忘记了使用
=
而不是
=
进行相等性检查。您应该将错误报告设置为
E|u ALL | E_NOTICE
,以便即使这些错误也将作为通知报告。虽然它是有效代码,但可能不是您想要执行的操作。

在比较两个值时需要使用双“=”。如果只使用一个,它总是返回true

    if ($rows[$j][1] == $names[$i]) {
        $score = $score + $rows[$j][2];
    }
    if ($rows[$j][3] == $names[$i]) {
        $score = $score + $rows[$j][4];
    }
比较两个值时需要使用双“=”。如果只使用一个,它总是返回true

    if ($rows[$j][1] == $names[$i]) {
        $score = $score + $rows[$j][2];
    }
    if ($rows[$j][3] == $names[$i]) {
        $score = $score + $rows[$j][4];
    }
比较两个值时需要使用双“=”。如果只使用一个,它总是返回true

    if ($rows[$j][1] == $names[$i]) {
        $score = $score + $rows[$j][2];
    }
    if ($rows[$j][3] == $names[$i]) {
        $score = $score + $rows[$j][4];
    }
比较两个值时需要使用双“=”。如果只使用一个,它总是返回true

    if ($rows[$j][1] == $names[$i]) {
        $score = $score + $rows[$j][2];
    }
    if ($rows[$j][3] == $names[$i]) {
        $score = $score + $rows[$j][4];
    }
您必须使用==进行检查

$score = $score + $rows[$j][2];
这将是:

$score += $rows[$j][2];
您必须使用==进行检查

$score = $score + $rows[$j][2];
这将是:

$score += $rows[$j][2];
您必须使用==进行检查

$score = $score + $rows[$j][2];
这将是:

$score += $rows[$j][2];
您必须使用==进行检查

$score = $score + $rows[$j][2];
这将是:

$score += $rows[$j][2];

非常感谢-这非常好。非常感谢-这非常好。非常感谢-这非常好。非常感谢-这非常好。非常感谢-这非常好。非常感谢-我将不得不研究错误报告,因为这可以节省我的时间。非常令人沮丧。我希望我第一次遇到这个问题时就来这里。再次感谢!!非常感谢-我将不得不研究错误报告,因为这可以节省我的时间。非常令人沮丧。我希望我第一次遇到这个问题时就来这里。再次感谢!!非常感谢-我将不得不研究错误报告,因为这可以节省我的时间。非常令人沮丧。我希望我第一次遇到这个问题时就来这里。再次感谢!!非常感谢-我将不得不研究错误报告,因为这可以节省我的时间。非常令人沮丧。我希望我第一次遇到这个问题时就来这里。再次感谢!!