lumen项目默认route是
$app->get('/', function () use ($app) {
return $app->welcome();
});
但,文档里写的是
$app->get('/', function() {
return 'Hello World';
});
有什么区别吗
lumen项目默认route是
$app->get('/', function () use ($app) {
return $app->welcome();
});
但,文档里写的是
$app->get('/', function() {
return 'Hello World';
});
有什么区别吗
就看你要不要在回调函数里面用$app这个变量。
这个和别人的库没关系,是PHP 匿名函数的特性。可以使用use关键字。
你也可以看看这个router库https://github.com/bephp/router,速度很快的。
而且你如果需要使用什么变量,只需要在函数定义的参数列表里面写就好。不需要使用use关键字的。
$router->get('/hello/:name', function($router, $name, $ext=null){
echo "Hello $name !!!";
//这里可以使用$router变量
//使用/hello/world?ext=json这个url访问的时候,这里的$ext就等于'json'
});
这里参数可以是path里面的,也可以是GET参数,也能是POST参数。
$app->get('/', function () use ($app) {
return $app->welcome();//具体逻辑在welcome函数,由controller和view处理,而不是简单的输出hello world
});
因为include route.php的环境中有一个$app变量,所以可以这么写。非常不建议用闭包作为Controller,请使用
Controller@action
的形式