"as"关键字在Laravel路由中的真正含义是什么?

Ani*_*ngh 8 laravel laravel-routing

正如我所理解的laravel文档,它用于重定向,可能是我不对.我写

Route::get('user/profile', ['as' => 'profile', function () {
    echo 'some_text';
}]);
Run Code Online (Sandbox Code Playgroud)

然后我期待我的网址从 https://base_url/public/index.php/user/profile下载https://base_url/public/index.php/profile,但它不会发生.

总的来说我想知道,如果我放置了什么是不同的

Route::get('user/profile', function () {
    echo 'some_text';
});
Run Code Online (Sandbox Code Playgroud)

而不是上面的路由规则.

Nic*_*ank 9

目的不是在路由文件中重定向.

相反,使用您提供的示例路线,Laravel将允许您通过使用以下方式引用所述路线:

$url = route('profile');
Run Code Online (Sandbox Code Playgroud)

因此,您不必在代码中反复手动构建URL.

所以,简而言之:区别在于第一件事是命名路线,最后一件事是非命名路线.由于您调用了第一个路由,因此可以通过该名称引用它.

  • as关键字在较旧的版本中,如果将文档更改为5.2,则可以看到`as`关键字。在较新的版本中,它是`-> name` (5认同)