Laravel Framework:语法错误,意外'功能'(T_FUNCTION)

时间:2013-02-28 06:50:28

标签: php laravel laravel-4 laravel-3

我正在尝试在新的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。

感谢。

1 个答案:

答案 0 :(得分:4)

HTML::macro('nav_link' function($route, $text) {

应该是

HTML::macro('nav_link', function($route, $text) {
                      ^ // You miss this comma