我有一个问题,我正在开发一个多语言网站,并努力为每个lang显示数据。我可以编写一个IF语句来检测当前的语言环境,例如:
@if('locale' = 'lv')
@foreach($slides_lv as $slide)
<img src="{{ $slide->path }}">
@endforeach
@endif
@if('locale' = 'en')
@foreach($slides_en as $slide)
<img src="{{ $slide->path }}">
@endforeach
@endif
@if('locale' = 'ru')
@foreach($slides_ru as $slide)
<img src="{{ $slide->path }}">
@endforeach
@endif
或者在Laravel中有更好的方法吗?
答案 0 :(得分:0)
你可以这样做:
<?php
$varName = 'slides_' . App::getLocale();
?>
@foreach ($$varName as $slide)
<img src="{{ $slide->path }}">
@endforeach
App::getLocale()
将返回区域设置(在您的情况下&#39; lv&#39;,&#39; en&#39;等)。
因此,您可以基于它构建动态变量名称,并将其用于foreach循环。
小心