Laravel 5 - Как установить локальное углеродное время на немецкий

Я использую Carbon и не знаю, как изменить вывод на немецкий формат времени.

Следует ли вносить изменения в контроллере или в представлении?

Теперь я хочу DayName как Germanstring. Это мой вывод по умолчанию:

{{ $game->start_at }}

когда я меняюсь в виду

{{ $game->start_at->format('l') }}

Я получаю DayName, но не на немецком языке.


person Wolfgang Müller    schedule 25.08.2015    source источник


Ответы (3)


Может быть, кто-то ищет преобразование углеродной даты в читаемый немецкий месяц:

if ( ! function_exists( 'convert_to_german_month' ) ) {
    /**
     * Converts given Carbon date into German Month
     * Output example: "Januar"
     *
     * @param \Carbon\Carbon $date
     * @return string
     */
    function convert_to_german_month( \Carbon\Carbon $date ) : string {
        $month_mapping = [
            'January' => 'Januar',
            'February' => 'Februar',
            'March' => 'März',
            'April' => 'April',
            'May' => 'Mai',
            'June' => 'Juni',
            'July' => 'Juli',
            'August' => 'August',
            'September' => 'September',
            'October' => 'Oktober',
            'November' => 'November',
            'December' => 'Dezember'
        ];
        return $month_mapping[strftime('%B', strtotime($date))];
    }
}
person Mathias    schedule 17.09.2019

Ваш ответ здесь, я думаю. Не забывайте всегда проверять документацию, когда у вас проблемы: D

http://carbon.nesbot.com/docs/#api-localization

setlocale(LC_TIME, 'German');

$dt = Carbon::now();

echo $dt->formatLocalized('%A %d %B %Y');
person Chathushka    schedule 25.08.2015
comment
Я знаю документы... куда вы помещаете setlocal()? В контроллере или представлении? - person Wolfgang Müller; 25.08.2015
comment
setlocale() - это функция php, когда вы меняете локаль в php, Carbon ведет себя в этой локали. И когда вы хотите вернуться назад, вы устанавливаете локаль по умолчанию. php.net/manual/en/function.setlocale.php - person Chathushka; 28.08.2015
comment
ищите локаль здесь, вы можете понять, как Carbon использует локализацию php. github.com/briannesbitt/Carbon/blob/master/src/ Углерод/ - person Chathushka; 28.08.2015

Я нашел свою ошибку, я

setlocale(LC_TIME, 'de_DE')

правильный синтаксис

setlocale(LC_TIME, 'German');

и я поместил его в bootstrap/app.php, так что он работает.

person Wolfgang Müller    schedule 25.08.2015