[英]Lumen route groups error: “Undefined variable: app”
我剛剛用這個非常簡單的路由文件創建了一個新的流明應用程序:
<?php
$app->get('/', function () {
return 'Hello World';
});
$app->group(['prefix' => '/admin'], function () {
$app->get('/user', function () {
return 'Admin user';
});
});
我得到這個錯誤:
lumen.ERROR: exception 'ErrorException' with message 'Undefined variable: app' in /path/to/my/lumen/project/app/Http/routes.php:10
怎么了?
請注意,如果刪除路由組,一切都會很好。
問題是您在group
調用中使用的閉包:
$app->group(['prefix' => '/admin'], function () {
$app->get('/user', function () {
return 'Admin - user';
});
});
您必須將對$app
的引用傳遞給它:
$app->group(['prefix' => '/admin'], function () use ($app) {
$app->get('/user', function () {
return 'Admin - user';
});
});
laravel網站上的lumen文檔包含錯誤,但github上的文檔已修復。 事實證明,應用程序實例作為參數傳遞給回調,因此您可以取消use ($app)
位,而可以這樣編寫:
$app->group(['prefix' => '/admin'], function ($app) {
$app->get('/user', function () {
return 'Admin - user';
});
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.