这个php会话代码中有什么错误?分析错误:语法错误,意外的文件结尾

这个php会话代码中有什么错误?分析错误:语法错误,意外的文件结尾,php,session,Php,Session,如果我有它的下一个方法,它是好的: if ($_SESSION['raza'] == 'Humano') { $defensaraza = 10 + $defensa; $magiaraza = 5 + $magia; $iniciativaraza = 5 + $iniciativa; $ataqueraza = $ataque + $entrenamientomelee[$edcuerpoacuerpo]

如果我有它的下一个方法,它是好的:

if ($_SESSION['raza'] == 'Humano') {
           $defensaraza = 10 + $defensa;
           $magiaraza = 5 + $magia;
           $iniciativaraza = 5 + $iniciativa;
           $ataqueraza = $ataque + $entrenamientomelee[$edcuerpoacuerpo]['nivel'] * 0.5;
           $balisticaraza = $balistica + $entrenamientobalistico[$edbalistica]['nivel'] * 0.5;
           ?>
          <span style="display:block; font-size:17px" ><?php echo 'Ataque: +' . $ataqueraza . '%' ?></span>
          <span style="display:block; font-size:17px" ><?php echo 'Balistica: +' . $balistica . '%' ?></span>
         <span style="display:block; font-size:17px" > <?php echo 'Magia: +' . $magiaraza . '%' ?></span>
            <span style="display:block; font-size:17px" ><?php echo 'Defensa: +' . $defensaraza . '%' ?></span>
            <span style="display:block; font-size:17px" ><?php echo 'Iniciativa: +' . $iniciativaraza . '' ?></span>
    <?php
    }

    if ($_SESSION['raza'] == 'Orco') {

        $defensaraza = 10 + $defensa;
        $magiaraza = 5 + $magia;
        $iniciativaraza = -5 + $iniciativa;
        $ataqueraza = 10 + $ataque + $entrenamientomelee[$edcuerpoacuerpo]['nivel'] * 0.5;
        $balisticaraza = $balistica + $entrenamientobalistico[$edbalistica]['nivel'] * 0.5;
        ?>
          <span style="display:block; font-size:17px" ><?php echo 'Ataque: +' . $ataqueraza . '%'; ?></span>
          <span style="display:block; font-size:17px" ><?php echo 'Balistica: +' . $balistica . '%'; ?></span>
         <span style="display:block; font-size:17px" > <?php echo 'Magia: +' . $magiaraza . '%'; ?></span>
            <span style="display:block; font-size:17px" ><?php echo 'Defensa: +' . $defensaraza . '%'; ?></span>
            <span style="display:block; font-size:17px" ><?php echo 'Iniciativa: +' . $iniciativaraza; ?></span>

<?php } ?>
我还试着放置elseif并检查php的所有打开和关闭,但我不明白为什么这个错误会发生在我身上,只是在会话中。会话在这一点上是100%启动的,如果它是在第一个if上,它就正常了,即使我将“humano”改为会话的另一个名称,问题是第二个if。
请帮助。

您的php标记看起来很笨拙,不知何故,您的大括号或打开和关闭php标记不匹配。幸运的是,有一种更好/更干净的方法

大概是这样的:

if ($_SESSION['raza'] == 'Humano') {
           $defensaraza = 10 + $defensa;
           $magiaraza = 5 + $magia;
           $iniciativaraza = 5 + $iniciativa;
           $ataqueraza = $ataque + $entrenamientomelee[$edcuerpoacuerpo]['nivel'] * 0.5;
           $balisticaraza = $balistica + $entrenamientobalistico[$edbalistica]['nivel'] * 0.5;
           ?>
          <span style="display:block; font-size:17px" ><?php echo 'Ataque: +' . $ataqueraza . '%' ?></span>
          <span style="display:block; font-size:17px" ><?php echo 'Balistica: +' . $balistica . '%' ?></span>
         <span style="display:block; font-size:17px" > <?php echo 'Magia: +' . $magiaraza . '%' ?></span>
            <span style="display:block; font-size:17px" ><?php echo 'Defensa: +' . $defensaraza . '%' ?></span>
            <span style="display:block; font-size:17px" ><?php echo 'Iniciativa: +' . $iniciativaraza . '' ?></span>
    <?php
    }?>

试一试。

仅此代码块没有解析错误。会话与此无关,因为PHP甚至没有尝试实际运行代码;在那之前它失败了。在此之前或之后,您必须有另一个语法问题,这可能是未关闭的}很好!工作!我不知道为什么会这样,但这就是答案!不能放弃投票,但100%工作!泰!你可以在joshtramposo上投票给这个答案,也可以点击旁边的大复选标记来接受它。没错,现在我知道我必须等待几分钟才能按下复选标记。我会的!谢谢
<?php if ($_SESSION['raza'] == 'Orco'): ?>
<?php
    $defensaraza = 10 + $defensa;
    $magiaraza = 5 + $magia;
    $iniciativaraza = -5 + $iniciativa;
    $ataqueraza = 10 + $ataque + $entrenamientomelee[$edcuerpoacuerpo]['nivel'] * 0.5;
    $balisticaraza = $balistica + $entrenamientobalistico[$edbalistica]['nivel'] * 0.5;
?>
   <span style="display:block; font-size:17px" ><?php echo 'Ataque: +' . $ataqueraza . '%' ?></span>
   <span style="display:block; font-size:17px" ><?php echo 'Balistica: +' . $balistica . '%' ?></span>
   <span style="display:block; font-size:17px" > <?php echo 'Magia: +' . $magiaraza . '%' ?></span>
   <span style="display:block; font-size:17px" ><?php echo 'Defensa: +' . $defensaraza . '%' ?></span>
   <span style="display:block; font-size:17px" ><?php echo 'Iniciativa: +' . $iniciativaraza . '' ?></span>

<?php endif; ?>