3

因此,我目前有一个在 Apache 2.2 和 PHP 5.3.18 上实时运行的站点,它按预期运行。我刚刚建立了一个新的开发环境,并决定启动 Apache 2.4 和 PHP 5.4.7 来试用它们(功能版本不应该破坏我的假设)。

无论如何,现在在我的生产服务器上执行良好的以下代码正在输出以下错误:

PHP Parse error:  syntax error, unexpected 'endforeach' (T_ENDFOREACH) in C:\xampp\htdocs\mysite\application\views\header_subnav.php on line 17

有什么新的东西我错过了,或者配置不好还是什么?

代码:

<nav class="header_subnav">
                <div class="subnav_item_wrapper">
                    <a href="<?php echo URL::site(); ?>">Home</a>&nbsp;&#8594;&nbsp;
                </div>
                <?php $i = 0; ?>
                <?php foreach($subnav as $subnav_text => $subnav_uri): ?>
                        <?php if($i === count($subnav) - 1): ?>
                            <div class="subnav_item_wrapper">   
                                <?php echo $subnav_text; ?>
                            </div>
                            <?php break; ?>
                        <? endif; ?>
                        <div class="subnav_item_wrapper">
                            <a href="<?php echo URL::site($lang.'/'.$subnav_uri); ?>"><?php echo $subnav_text; ?></a><?php if($i !== count($subnav) - 1) echo '&nbsp;&#8594;&nbsp;'; ?>
                        </div>
                    <?php $i++; ?>
                <!-- LINE 17 -->
                <?php endforeach; ?>
            </nav>
4

1 回答 1

4

您的 endif 上的短标签:

<? endif; ?>

应该

<?php endif; ?>
于 2013-04-01T15:45:55.137 回答