Поделиться:
Поделиться:

4 ответа

constb
12.11.2016 13:19

разве jenssegers/date использует системную локаль? по-моему у него есть свой метод Date::setLocale и своя локаль ru в которой месяцы со склонениями. в ларавеле он наверное использует ту локаль которая в config/app.php задана или можно вручную вызвать \Lang::setLocale('ru') в AppServiceProvider.php

Vikky Shostak
12.11.2016 15:34

Там в моём куске кода эта строчка (почему-то) уехала к предыдущей. Иными словами, ни Date::setLocale('ru'), ни \Lang::setLocale('ru'), ни даже Carbon::setLocale('ru') – ситуацию не исправили.

Неясным, для меня, является факт того, что на локалке (OS X 10.11.6, PHP 7) и OpenServer 5.2.5 (Win10x64, PHP 5.6\7) – отображается всё так, как в jenssegers/date (месяц с маленькой буквы, родительный падеж), а на Таймвебе (шаред, на сервере kimmy) – совсем мимо Date и Carbon (месяц с большой буквы, в именительном падеже).

Гуглил проблему, но у рунете ничего подобного не нашёл, а у англичан нет подобных языковых проблем (счастливые...).

Vikky Shostak
12.11.2016 21:28

Обратился в ТП. Лучше бы не обращался, толку ноль.

Сказали: «Да, действительно, сейчас настройки хостинга таковы, что дата выводится именно таким образом. К сожалению, в рамках виртуального хостинга эту настройку изменить не представляется возможным.»

Говорю им: «Возможно ли перенести мой аккаунт на сервер, где это пофиксено? Просто, скорее всего из-за этого, не работает Carbon и jenssegers/date (соответственно).»

Отвечают: «Укажите, пожалуйста, список требований к серверу для корректного выполнения указанных Вами модулей. В противном случае, обратитесь, пожалуйста, к документации или службе поддержки используемого ПО для получения дополнительной информации.»

Короче, воз и ныне там. Буду искать другой сервер (путём регистрации на пробные 10 дней), чего ж делать остаётся.

constb
14.11.2016 06:23

нет, jenssegers/date не должен форматировать дату таким образом сам по себе. что-то не так залито, не так настроено. "10 Ноябрь 2016" - так форматирует пхпшная стандартная функция strftime с русской локалью. такое впечатление что jenssegers не может найти свою локаль и использует дефолтную.