我正在尝试本地化Carbon不同语言的视图中的日期到目前为止还没有成功。
我从模型中检索日期并将其发送到视图:
Route::get('/tables/setup', function(){
$now= Date::now('Europe/Paris');
$active_tasks = GanttTask::whereDate('start_date', '<', $now)
->whereDate('end_date', '>', $now)
->get();
return view('my_view', compact('active_tasks'));
});
并且可以轻松地将它们显示在“my_view”中:
@foreach($active_tasks as $active_task)
{{$active_task->start_date->format('l j F Y H:i:s')}} //Friday 26 January 2018 09:19:54
@endforeach
但我无法设法以所需的语言呈现它们。
我尝试添加Carbon::setLocale('it');
在路线或视图中没有任何效果。
EDIT:我的刀片调用中出现轻微错误{{$active_task->start_date->format('l j F Y H:i:s')}}
代替{{$active_task->format('l j F Y H:i:s')}}
你需要使用php函数setlocale
在 Carbon 中设置本地化格式之前。
不幸的是,基类 DateTime 没有任何本地化支持。为了开始本地化支持,添加了 formatLocalized($format) 方法。该实现使用当前实例时间戳调用 strftime。如果您首先使用 PHP 函数 setlocale() 设置当前区域设置,则返回的字符串将采用正确的区域设置进行格式化。
文档中的示例:
setlocale(LC_TIME, 'German');
echo $dt->formatLocalized('%A %d %B %Y'); // Mittwoch 21 Mai 1975
setlocale(LC_TIME, '');
echo $dt->formatLocalized('%A %d %B %Y'); // Wednesday 21 May 1975
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)