Kohana3 Имя функции должно быть строковым исключением в классе Route

У меня есть следующий код в методе Welcome_Controller action_index:

$route = new Route('(<controller>(/<action>(/<id>)))');
$body = $route->uri(array(
  'controller' => 'welcome',
  'action'     => 'index',
  'id'         => '10'
));
echo Debug::vars($body);

Когда вызывается метод $route->uri, я получаю сообщение об ошибке:

ErrorException [Fatal Error]: имя функции должно быть строкой в ​​SYSPATH/classes/Kohana/Route.php [ 589 ]

584             }
585 
586             return array($result, $required);
587         };
588 
589         list($uri) = $compile($this->_uri, TRUE);
590 
591         // Trim all extra slashes from the URI
592         $uri = preg_replace('#//+#', '/', rtrim($uri, '/'));
593 
594         if ($this->is_external())

Почему я получаю эту ошибку? Согласно файлу install.php Kohana, моя среда прошла все требования.

$ compile является анонимной функцией, но согласно PHP Manual, она была введена в версии PHP 5.3.0, которая есть в моей среде хостинга. Может быть, есть возможность включить / отключить анонимные функции в PHP?

Вы можете найти весь код здесь: https://github.com/DamianKedzior/kohana/tree/3.3/route_uri_exception

0 ответов

Другие вопросы по тегам