Php 停止进程的一个if语句

Php 停止进程的一个if语句,php,mysql,Php,Mysql,我对一些if语句有问题。长话短说,当某个语句为true时,代码将停止,而不会转到下一个循环/if语句系列 这是第一句话,一旦达到,就不会继续 else if ((($pteam_score[$i] == $popposition_score[$i]) && ($pteam_score[$i] != 0) && ($popposition_score[$i] != 0))) { $team_points[$i]-=2; $opposition_points

我对一些if语句有问题。长话短说,当某个语句为true时,代码将停止,而不会转到下一个循环/if语句系列

这是第一句话,一旦达到,就不会继续

else if ((($pteam_score[$i] == $popposition_score[$i]) && ($pteam_score[$i] != 0) &&     ($popposition_score[$i] != 0))) {

$team_points[$i]-=2;
$opposition_points[$i]-=2;
$team_win[$i]-=0;
$team_draw[$i]-=1;
$team_loss[$i]-=0;
$team_extra[$i]-=0;

$opp_win[$i]-=0;
$opp_draw[$i]-=1;
$opp_loss[$i]-=0;
$opp_extra[$i]-=0;

$played[$i]-=1;
echo "hey";
$query9=$database->query("UPDATE results_a SET team_name='$team[$i]',     team_score='$pteam_score[$i]',
opposition_score='$popposition_score[$i]', opposition_name='$opposition[$i]' where     fixture_id='$fixture_id'");

}
这是第二个。请记住,这些ifs/else-ifs/中大约有20个,当其他任何一个被命中时,这些点都会被删除(就像它们在两个坏循环中一样),但似乎没有转移到代码的单独部分。也许巧合的是,两个坏循环都涉及一个绘制结果

    else if ((($pteam_score[$i] == $popposition_score[$i]) && ($pteam_score[$i] != 0) &&     ($popposition_score[$i] != 0))) {

$team_points[$i]-=2;
$opposition_points[$i]-=2;
$team_win[$i]-=0;
$team_draw[$i]-=1;
$team_loss[$i]-=0;
$team_extra[$i]-=0;

$opp_win[$i]-=0;
$opp_draw[$i]-=1;
$opp_loss[$i]-=0;
$opp_extra[$i]-=0;

$played[$i]-=1;
echo "what?";
$query9=$database->query("UPDATE results_a SET team_name='$team[$i]',     team_score='$pteam_score[$i]',
opposition_score='$popposition_score[$i]', opposition_name='$opposition[$i]' where     fixture_id='$fixture_id'");

}
有人能看出代码会因为上述两条语句而停止运行的原因吗?echo只是看看哪个选项被点击了。正如我所说的,这两个循环在正确的时间被命中,但它们似乎是唯一停止这个过程的两个循环

编辑-工作正常的部分

if (($team_score[$i] == $pteam_score[$i]) && ($opposition_score[$i] ==     $popposition_score[$i])) {
$team_points[$i]+=0;
$opposition_points[$i]+=0;
$team_win[$i]+=0;
$team_draw[$i]+=0;
$team_loss[$i]+=0;
$team_extra[$i]+=0;

$opp_win[$i]+=0;
$opp_draw[$i]+=0;
$opp_loss[$i]+=0;
$opp_extra[$i]+=0;

$played[$i]+=0;

echo "0";
$query11=$database->query("UPDATE results_a SET team_name='$team[$i]',     team_score='$pteam_score[$i]',
opposition_score='$popposition_score[$i]', opposition_name='$opposition[$i]' where      fixture_id='$fixture_id'");

}
else if (($pteam_score[$i] == 0) && ($popposition_score[$i] == 0)) {
$team_points[$i]+=0;
$opposition_points[$i]+=0;
$team_win[$i]+=0;
$team_draw[$i]+=0;
$team_loss[$i]+=0;
$team_extra[$i]+=0;

$opp_win[$i]+=0;
$opp_draw[$i]+=0;
$opp_loss[$i]+=0;
$opp_extra[$i]+=0;

$played[$i]+=0;
echo "bla";

}
 if (($pteam_score[$i] != $team_score[$i]) && ($popposition_score[$i] ==     $opposition_score[$i])) {


  if (($pteam_score[$i] > $popposition_score[$i]) && ($pteam_bonus[$i] >     $popposition_score[$i])) {
$team_points[$i]-=3;
$opposition_points[$i]-=0;
$team_win[$i]-=1;
$team_draw[$i]-=0;
$team_loss[$i]-=0;
$team_extra[$i]-=0;

$opp_win[$i]-=0;
$opp_draw[$i]-=0;
$opp_loss[$i]-=1;
$opp_extra[$i]-=0;

$played[$i]-=1;
echo "6";
$query5=$database->query("UPDATE results_a SET team_name='$team[$i]',     team_score='$pteam_score[$i]',
opposition_score='$popposition_score[$i]', opposition_name='$opposition[$i]' where     fixture_id='$fixture_id'");

}

提前谢谢

我会穿上我的精神衣服,谢谢。我假设
$I
在其他地方增加了?是的,但一旦这个选项是真的,下一段代码就不会运行了考虑到缺乏细节,你可能至少要添加一段代码来比较。第一段和第二段的条件相同;与
else
组合后,将不会调用第二个。但我想这是因为代码片段。重新构造代码,简化可能会有所帮助。还有一个强制性的指针,指向更好地使用准备好的语句。