1

使用以下 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; ?>

这里有什么问题?谢谢!

4

5 回答 5

7

elseif必须是一个词。删除空间。

于 2012-11-09T20:36:42.180 回答
1

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

于 2012-11-09T20:37:46.800 回答
1

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

<?php elseif (tribe_get_all_day()): ?>
于 2012-11-09T20:38:21.223 回答
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; ?>
于 2012-11-09T20:38:52.647 回答
0

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

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

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

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

于 2012-11-09T20:52:12.653 回答