2016-12-20 5 views
3

В представлении лезвию У меня этот кодCarbon formatLocalized не работает в Клинка

{{ \Carbon\Carbon::setLocale("es") }} {{ $registro->fecha_desde->format("l j F Y") }}<br /> {{ $registro->fecha_desde->formatLocalized("%A %d %B %Y") }}<br /> {{ $registro->fecha_desde->diffForHumans() }}

Это не работает, он возвращает:

Friday 30 December 2016 
Friday 30 December 2016 
dentro de 1 semana 

Таким образом, формат() и formatLocalized всегда возвращается дата в английском формате. diffForHumans возвращает дату, локализованную (на данном испанском языке).

Я что-то упустил? can not верят, что «Формат CarbonLocalized» не возвращает локализованные датированные даты ....

ответ

1

Найдено. проблемы является \ Carbon :: Setlocale()

Это выглядит некрасиво, но работает:

{{ setlocale(LC_ALL, 'es_MX', 'es', 'ES') }} 
{{ $registro->fecha_desde->formatLocalized("%A %d %B %Y") }} 

Выход:

es viernes 30 diciembre 2016 
0

для просмотра форматов с дополнительными акцентами, вы должны включить кодировку UTF8 , до форматирования:

\Carbon::setUTF8(true); 
0

Открыть AppServiceProvider.php Вызов класса углеродистых use Carbon\Carbon;

public function boot() 
{ 
    Carbon::setUTF8(true); 
    Carbon::setLocale(config('app.locale')); 
    setlocale(LC_TIME, config('app.locale')); 
} 

в config папку открытой app.php

набор 'locale' => 'es',