如何使用PHP_intl显示月份名称?

时间:2017-10-24 11:10:22

标签: php datetime

我一直在拿号码而不是月份名字。我需要获得月份名称,例如七月

$formatter = new \IntlDateFormatter(
    "fa_IR@calendar=persian",
    \IntlDateFormatter::FULL,
    \IntlDateFormatter::FULL,
    'Asia/Tehran',
    \IntlDateFormatter::TRADITIONAL
);
$time = new \DateTime();
$formatter->setPattern('yyyy mm dd');
$formatter->format($time)

4 个答案:

答案 0 :(得分:5)

您可以使用MMMM 所有可用的模式都在this link

$formatter = new \IntlDateFormatter(
    "fa_IR@calendar=persian",
    \IntlDateFormatter::FULL,
    \IntlDateFormatter::FULL,
    'Asia/Tehran',
    \IntlDateFormatter::TRADITIONAL
);
$time = new \DateTime();
$formatter->setPattern('yyyy MMMM dd');
$formatter->format($time)

此问题与this

相同

答案 1 :(得分:3)

$time = new \DateTime();
$formatter->setPattern('yyyy MMMM dd');
$formatter->format($time)

使用MMMM显示月份名称。了解更多信息: http://userguide.icu-project.org/formatparse/datetime

答案 2 :(得分:1)

$formatter->setPattern('yyyy MMMM dd');

更多信息:http://userguide.icu-project.org/formatparse/datetime

答案 3 :(得分:0)

试试这个:

setlocale(LC_ALL, 'no_NB.utf-8', 'nor'); // For other stuff
Locale::setDefault('no_NB.utf-8'); // For IntlDateFormatter

$f = new IntlDateFormatter(null, null, null, null, null, 'd. MMMM y');
echo "Date-". $f->format(new DateTime("2017-10-24"))."<br/>";

$f = new IntlDateFormatter(null, null, null, null, null, 'MMMM');
echo "Month-". $f->format(new DateTime("2017-10-24"));

输出:

日期 - 2017年11月24日

月 - oktober