Локализовать дату с использованием углерода в шаблоне .blade

Я отформатировал дату с помощью Carbon в моем шаблоне .blade следующим образом:

{{ Carbon\Carbon::parse($event['date_from'])->toFormattedDateString() }}

И он выводит:

Mar 20, 2018

Итак, как перевести дату например в русский формат:

вы можете использовать Carbon :: setLocale ('ru'); для получения дополнительной информации посетите: carbon.nesbot.com/docs

Prashant Prajapati 10.03.2018 06:34
stackoverflow.com/a/47972040/1227923
Alexey Mezenin 10.03.2018 06:39

@AlexeyMezenin Это пример для шаблонов .blade? Не для контроллеров ...

Камилов Тимур 10.03.2018 06:43

@ КамиловТимур, вы можете сделать это в любом месте своего приложения, но рекомендуется установить языковой стандарт в промежуточном программном обеспечении или контроллере, а затем использовать toFormattedDateString() в шаблоне лезвия.

Alexey Mezenin 10.03.2018 06:49

@AlexeyMezenin, не могли бы вы показать мне, как это сделать? Cz Я попытался добавить строки в контроллер, но, похоже, это не сработало.

Камилов Тимур 10.03.2018 06:50

@ КамиловТимур, старый ответ имеет ссылка на пример. Если это не сработает, следуйте инструкциям (желтый блок) в старый ответ.

Alexey Mezenin 10.03.2018 06:54

@AlexeyMezenin вот как я установил локаль: public function index() { Carbon::setLocale('ru'); $events = Event::all(); $tickets = Ticket::all(); return view('pages.events.index')->with([ 'events' => $events, 'tickets' => $tickets ]); }

Камилов Тимур 10.03.2018 06:55

@ КамиловТимур, вы используете не тот код, который я показал, а код Прашанта. Поэтому я думаю, вам следует задать ему этот вопрос.

Alexey Mezenin 10.03.2018 06:58
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
3
8
3 516
2

Ответы 2

вы можете использовать Carbon::setLocale('ru'); и formatLocalized('%d %M');

для получения дополнительной информации посетите: Локализация углерода

Мне нужно локализовать дату в .blade. Является ли это возможным?

Камилов Тимур 10.03.2018 06:48

Написание логики в лезвии - не очень хорошее кодирование, поэтому я предлагаю вам написать логику локализации в контроллере, а затем передать ее в файл лезвия

Prashant Prajapati 10.03.2018 07:00

Для шаблонов лезвий Laravel я настроил новую функцию на своей модели:

public function localizedDiffForHumans() {
    Carbon::setLocale(App::getLocale());
    return $this->created_at->diffForHumans();
}

А потом просто замените вызов из шаблона:

{{$message->localizedDiffForHumans()}}

Другие вопросы по теме