簡體   English   中英

如何從cakephp 2中的路由(routes.php)文件調用內聯函數?

[英]How to call inline function from routing (routes.php) file in cakephp 2?

我想調用一個在route.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中做同樣的事情嗎?

可以在cakephp中做同樣的事情嗎?

是的,但不在CakePHP2中。

使用CakePHP3。 請參閱文檔的“路由”部分 如果您已閱讀 Cake2 的API和/或文檔,它也會告訴您不能傳遞閉包。

結論:增強您的文檔閱讀技能。 除了快速瀏覽API文檔或代碼中的方法簽名本身之外,沒有比這些問題更簡單的解決方案了。 它將告訴您可以傳遞哪些args。

另外,我建議您了解CakePHP的工作原理,而不是像其他框架API一樣嘗試使用它的API。 這是行不通的,並且假設它太幼稚了。 他們有不同的方法(簡體:約定優於配置VS配置在公約)及其API的不同

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM