所以我目前有一个在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> →
</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 ' → '; ?>
</div>
<?php $i++; ?>
<!-- LINE 17 -->
<?php endforeach; ?>
</nav>
答案 0 :(得分:4)
您的endif上的短标记:
<? endif; ?>
应该是
<?php endif; ?>