smidl
@smidl
WordPress-разработчик

Конвертация даты из строки типа 29.10.17 в локализированную типа «29 октября, суббота»?

Так запутался в strtotime и подобных функциях, что уже не знаю как быть. Не хотят они работать с таким форматом (29.10.17)

У себя ставлю сначала:
setlocale( LC_ALL, "ru_RU.UTF-8" );

Потом уже пытался перевести дату правильно

$day = '15.10.17';
$date_formatted = strftime( '%d %B, %A', strtotime( $day ) );
echo $date_formatted;

А она выводит дату сегодняшнюю, вместо заданной
  • Вопрос задан
  • 515 просмотров
Решения вопроса 1
sanek_os9
@sanek_os9
Работаю с Laravel, Vue, Vuetify, AWS Amazon, Linux
function convert(string $date): string
{
    $date = preg_replace('/^([0-9]{2}\.[0-9]{2})\.([0-9]+)$/', '$1.20$2', $date);
    return strftime('%d %B, %A', strtotime($date));
}
$date_formated = convert('15.10.17');
echo $date_formated; // 15 October, Sunday
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
carbon.nesbot.com/docs - русский язык есть
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы