我正在做一个多语言网站,我使用路由:我的route.php中带有前缀的组。
现在,我正在尝试获取语言变量以了解我正在查看网站的语言,然后使用它来查询数据库。
我发现了一个问题,如何从网址获取1个以上的变量?
Route::get('/{vedi}/{fuffa}', function($vedi, $fuffa)
{
$arrays=array(['campo'=>$vedi,
'lingua'=>$fuffa]);
return View::make('abc')->with('data',$arrays);
});
然后在我的' abc'我会要求一个
{{$data->campo}}
但是他告诉我它不是一个对象。 1)我该怎么办? 2)这是建立网站多语言的正确方法吗?
答案 0 :(得分:0)
1)
您正尝试通过不存在的$data
对象访问您的数据。您尝试访问自己的值,例如$data
是一个对象(使用->campo
)。
你有一个阵列实际发生了什么。在您的情况下,您可以像这样访问您的变量:
{{ $data['campo'] }}
你还能做什么:
$arrays=array('campo'=>$vedi,
'lingua'=>$fuffa);
return View::make('abc')->with($arrays);
});
然后,在您看来,您将直接使用变量,而不是在一个$ data数组中:
{{ $campo }}
2) 您可以使用laravels本地化功能。基本上,您为具有相同消息结构的每种语言创建一个或多个文件。在您的视图中,您接收相同的消息,但根据查看者选择的语言,将显示正确的消息。