【发布时间】:2013-08-30 07:58:40
【问题描述】:
我有这个 PHP 代码:
$monthNum = sprintf("%02s", $result["month"]);
$monthName = date("F", strtotime($monthNum));
echo $monthName;
但它返回的是 December 而不是 August。
$result["month"] 等于 8,所以sprintf 函数添加了一个0 使其成为08。
【问题讨论】:
-
除非您将其转换为完整日期 (08-21-2013),或者与日期非常相似的日期
strtotime不知道您要做什么。或者,只需使用开关即可。 -
抱歉 - $result["month"] 是 8,因为我有一个 SQL 查询说 select MONTH(date time) from table... 所以在表中它是完整的日期格式跨度>
-
但是
strtotime不知道“8”是什么意思。strtotime解析完整的时间戳,例如“2012-05-12 08:43:12”。在这种情况下,“8”是什么意思? -
为什么不直接:
echo date( "F", time() );?例如,echo date( "F", strtotime("2019-03-09") );将输出“三月”