用于控制结构的PHP替代语法导致解析错误

时间:2012-11-09 20:34:02

标签: php

使用以下PHP进行操作无效,显然是语法问题:

我一直收到这个错误:

  

解析错误:语法错误,意外T_IF,期待':'

我不会粘贴任何包含错误消息的行号,如您所见。当我保持这段代码不变时,我一直收到这个错误:

<?php if (tribe_is_multiday()): ?>

    <h2>multi day!</h2>

<?php else if (tribe_get_all_day()): ?>

    <h2>all day!</h2>

<?php else: ?>

    <h2>other</h2>

<?php endif; ?>

这里有什么问题?谢谢!

5 个答案:

答案 0 :(得分:7)

elseif需要一个字。删除空格。

答案 1 :(得分:1)

我认为您需要将else if更改为elseif。请参阅http://www.php.net/manual/en/control-structures.alternative-syntax.php

答案 2 :(得分:1)

使用此语法需要elseif命令而不是else

<?php elseif (tribe_get_all_day()): ?>

答案 3 :(得分:1)

这应该有用,elseif不是else if

<?php if (tribe_is_multiday()): ?>
    <h2>multi day!</h2>
<?php elseif (tribe_get_all_day()): ?>
    <h2>all day!</h2>
<?php else: ?>
    <h2>other</h2>
<?php endif; ?>

答案 4 :(得分:0)

这是PHP的一些有趣的事情,请参阅http://www.php.net/manual/en/control-structures.elseif.php

另一方面,如果您使用替代方法

if(condition1) {
    ...
} else if(condition2) {
    ...
} else {
    ...
}

虽然使用不正确,但上面的代码实际上会运行。在使用PHP之前,我看到许多人习惯使用像JavaScript这样的语言,这是一个问题。它显然不适用于if ... endif模式。在PHP中,“elseif”是正确的语法。