如何从cakephp 2中的routing(routes.php)文件调用内联函数?

时间:2016-09-07 10:04:26

标签: php laravel cakephp routing inline-functions

我想调用routes.php文件中定义的内联函数。

我试过这些代码:

Router::connect('/test', function () {    return 'test';exit;});
Router::connect('/test', function () {    echo 'test';exit;});

但是当我访问 localhost / cakephp / test 时,我收到错误:

 Error: Cannot use object of type Closure as array
File: /var/www/html/massmobile/lib/Cake/Routing/Router.php
Line: 348

Notice: If you want to customize this error message, create app/View/Errors/fatal_error.ctp

在laravel http://www.tutorialspoint.com/laravel/laravel_routing.htm中,我们可以从路径文件中调用内联函数。是不是可以在cakephp中做同样的事情?

1 个答案:

答案 0 :(得分:3)

  

是否有可能在cakephp中做同样的事情?

是的,但不在CakePHP2中。

使用CakePHP3。请参阅文档的the Routing section。如果您有read the API和/或Cake2的文档,它也会告诉您,您无法通过关闭。

结论:掌握您的文档阅读技巧。对于这些问题,没有比仅仅快速查看API文档或代码中的方法签名本身更简单的解决方案了。它会告诉你什么args可以传递。

另外,我建议您了解CakePHP的工作原理,而不是像其他框架API那样尝试使用它的API。这不会起作用,并且假设它很幼稚。他们采用了不同的方法(简化:约定优于配置与配置优于约定),并且他们的API 不同。