Laravel : 如何将 web.php 中的变量传递给 blade 视图名称

Laravel : How to pass variable in web.php to blade views name

这是我的 web.php 文件:

<?php $current_language = app()->getLocale();
Route::get('/',function(){ return view('fr/accueil');});
Route::get('/test',function(){ return view('{$current_language}/test');});

但是 current_language 变量不被 Laravel 识别,它说 "View [{$current_language}.test] not found.",但是,我有 fr/test 和 ar/test blade 意见。如何,我可以传递 $current_language 的值吗? 非常感谢。

添加use关键字来定义匿名函数中的$current_language:

<?php $current_language = app()->getLocale();
Route::get('/',function(){ return view('fr/accueil');});
Route::get('/test',function() use($current_language){ 
    return view($current_language.'/test');
});

要获取语言的最后一个值,您应该添加 app()->getLocale(),因为第一个实现会将 return 分配给 $current_language 变量的第一个值,因此您可以这样做这 :

Route::get('/test',function(){ 
    return view(app()->getLocale().'/test');
});