преобразование формата даты из числового в текстовый php - PullRequest
0 голосов
/ 28 ноября 2011

У меня есть поле даты, которое генерирует

<?php $date = 11/12/2011;
$evdate = explode("/", $date);

$exday = $evdate[0];
$exmonth = $evdate[1];
$exyear = $evdate[2]; ?>

Мне нужно вывести ниже из $exmonth.

"Этот месяц декабрь"

Как мне отформатировать числовое значение в тексте (например, январь)?

Ответы [ 3 ]

3 голосов
/ 28 ноября 2011
echo 'This month is ' . date('F', mktime(0, 0, 0, $exday, $exmonth, $exyear));

http://php.net/manual/en/function.date.php

  • M: краткое текстовое представление месяца, три буквы (январь до декабря)
  • F: полное текстовое представление месяца, например С января по март с января по декабрь
1 голос
/ 28 ноября 2011

Для полного названия месяца: (декабрь)

echo 'The month is ' . date( 'F', mktime( 0, 0, 0, $exmonth, $exday, $exyear));

Для трехбуквенного названия месяца: (декабрь)

echo 'The month is ' . date( 'M', mktime( 0, 0, 0, $exmonth, $exday, $exyear));
0 голосов
/ 28 ноября 2011

Вы можете использовать strftime () и mktime () :

echo strftime("This month is %B", mktime(0, 0, 0, $exmonth, $exday, $exyear));

Вызов mktime преобразует ваши числа в объект даты php, а strftime означает «время в формате строки» и отформатирует ваше время в соответствии с заданным шаблоном. Здесь %B - код, используемый для указания названия месяца. Вы можете видеть в документах все коды, которые вы можете использовать для других компонентов даты.

...