如何将日期从8转换为AUG

时间:2012-08-06 11:31:46

标签: php

我想将数字转换为实际月份。我只需要一个月。

我现在正在尝试这样

$str = 8; $anInt = intval($str); $test = date('M',$anInt); echo $test;

结果是JAN,我原本应该得到“AUG”。我不知道为什么。

对我有什么想法或建议吗?

4 个答案:

答案 0 :(得分:2)

date()函数假定时间戳。

你应该试试这个:

$test = date('M',mktime(0,0,0,$anInt,0,0);

来自datemktime的文档:

// Prints: Your date's month is : August
echo "Your date's month is : " . date("F", mktime(0, 0, 0, $anInt, 0, 0));

答案 1 :(得分:0)

使用mktime

echo date('M', mktime(0, 0, 0, $str));

答案 2 :(得分:0)

你在这里:

echo date('M',strtotime('08/01/2012'));

或者,如果你想要全部上限:

echo strtoupper(date('M',strtotime('08/01/2012')));

可能还有其他方法,但这是第一个想到的方法

答案 3 :(得分:0)

重复的问题。 Read here.

了解日期函数here

使用date()您应该使用时间戳。 要将日期值转换为时间戳,请使用strtotime

$date = '2012-8-8';
$timestamp = strtotime($date);
echo date('M',$timestamp);

对于你的问题:

$monthnumber = 4;
$date = '2012-'.$monthnumber.'-8';
$timestamp = strtotime($date);
echo date('M',$timestamp);