我正在尝试在新的Laravel3框架安装中包含一个宏,我已经获得了PHP 5.4(phpinfo确认了这一点)。我最初怀疑这是一个问题,关闭不支持5.3.17,所以我升级到5.4,我仍然得到这个错误。
未处理的例外
消息:
语法错误,意外'功能'(T_FUNCTION) 位置:
第3行的C:\ wamp \ www \ script-manager \ application \ libraries \ macros \ nav_link.php
导航链接文件具有以下宏:
<?php
HTML::macro('nav_link' function($route, $text) {
$class = ( URI::is($route) or URI::is($route.'/*') ) ? 'class="active"' : '';
$href = URL::to($route);
$action = Request::route();
$action = $action->action;
if ( isset($action['as']) ) {
$class = ( ($action['as'] == $route) or ($action['as'] == $route.'/*') ) ? 'class="active"' : '';
$href = URL::to_route($route);
}
return '<li ' . $class . '><a href="' . $href . '">' . $text . '</a></li>';
});
?>
并且在start.php的底部需要:
require path('app') . 'libraries\macros\nav_link.php';
在我的情况下,我确实没有其他人遇到这个问题,所以我迷路了。在Windows 7上使用WAMP 5.4。
感谢。
答案 0 :(得分:4)
HTML::macro('nav_link' function($route, $text) {
应该是
HTML::macro('nav_link', function($route, $text) {
^ // You miss this comma