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

时间:2017-10-31 13:41:22

标签: php laravel blade laravel-blade

这是我的web.php文件:

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

但是Laravel无法识别current_language变量,它说“找不到View [{$ current_language} .test”。“但是,我有fr / test和ar / test刀片视图。怎么样,我可以传递$ current_language的值吗? 非常感谢。

1 个答案:

答案 0 :(得分:3)

添加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(),因为第一个实现将返回分配给$current_language变量的第一个值,因此您可以这样做:

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