繁体   English   中英

解析错误:语法错误,意外的T_ELSE,我不知道为什么

[英]Parse error: syntax error, unexpected T_ELSE and I don't know why

这是我的PHP代码:

<?php if($user->uid == '1'){ ?>
    <h3 class="info">Upcoming Games</h3>    <!--MY CHANGE -from Athletics Events -->
    <?php } ?>
    <?php else { ?> <h3 class="info">Athletic Events</h3>     <?php }?>

为什么会出现此错误? 我有我需要的所有支架,不是吗?

}else {不能用您所拥有的方式与PHP标记分开。 认为它好像您正在尝试做的那样:

<?php
if($some_condition) {
    //do something
}
echo '     ';
else {
    //something else
}

这会给您一个解析错误。 因为要关闭PHP标记,然后有效地输出空格,然后重新打开,所以代码的行为与此类似。 如果您也要执行<?php }?><?php else {?> ,同样也适用,只是它的行为就像您在执行echo ''; 在两者之间。

使用更干净,更不易出错的方法:

<?php if($user->uid == '1'): ?>
<h3 class="info">Upcoming Games</h3>    <!--MY CHANGE -from Athletics Events -->

<?php else: ?>
<h3 class="info">Athletic Events</h3>     

<?php endif; ?>

像这样重写,让我们看看

<?php if($user->uid == '1'){ ?>
   <h3 class="info">Upcoming Games</h3>    <!--MY CHANGE -from Athletics Events -->
<?php 
   } else { 
 ?>
   <h3 class="info">Athletic Events</h3>     
<?php 
   }
?>

这也起作用

<?php if($user == '1'){ ?>
<h3 class="info">Upcoming Games</h3>    <!--MY CHANGE -from Athletics Events -->
<?php } else ?>
<?php  { ?> <h3 class="info">Athletic Events</h3>     <?php }?>

那是您的代码的副本,但else都向上移动。 所以很明显, else不应该一开始

像这样尝试

<?php if($user->uid == '1'){ ?>
    <h3 class="info">Upcoming Games</h3>    <!--MY CHANGE -from Athletics Events -->
    <?php } else { ?> <h3 class="info">Athletic Events</h3>     <?php }?>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM