我有这个PHP代码:
$monthNum = sprintf("%02s", $result["month"]);
$monthName = date("F", strtotime($monthNum));
echo $monthName;
但是它正在返回December
而不是August
。
$result["month"]
等于8,因此sprintf
函数要添加一个0
使其08
。
推荐的方法是:
如今,您应该真正将DateTime对象用于任何日期/时间数学计算。这要求您的PHP版本> =
5.2。如Glavić的答案所示,您可以使用以下命令:
$monthNum = 3;
$dateObj = DateTime::createFromFormat('!m', $monthNum);
$monthName = $dateObj->format('F'); // March
该!
格式化字符用于重置一切的Unix纪元。该m
格式字符是一月份的数字表示,用前导零。
替代解决方案:
如果您使用的是较旧的PHP版本,并且目前无法升级,则可以使用此解决方案。date()
函数的第二个参数接受时间戳,您可以使用它mktime()
来创建一个时间戳,如下所示:
$monthNum = 3;
$monthName = date('F', mktime(0, 0, 0, $monthNum, 10)); // March
如果您想要3个字母的月份名称Mar
,请更改F
为M
。所有可用格式选项的列表都可以在PHP手册文档中找到。
问题内容: 有一个简单的方法来改变,这样 (就可以了太)。我可以做一个case语句,但是肯定有一个要转换的函数吗?编辑:我希望我可以接受多个答案,因为你们两个基本上给了我我所需的力量。 这将给出的数值。谢谢! 问题答案: 是, 将月份格式化为其数字表示形式。
问题内容: 我有几个月以1,2,3,4,… 12的形式存储在SQL Server中。我想将它们显示为一月,二月等。SQLServer中是否有像MonthName(1)= January这样的函数?如果可能的话,我试图避免使用CASE语句。 问题答案: 有点hacky,但应该可以工作:
问题内容: 我正在尝试创建一个函数,该函数可以将月份数字转换为缩写的月份名称,或者将月份的缩写名称转换为月份的数字。我以为这可能是一个常见问题,但我无法在网上找到它。 我在考虑日历模块。我看到可以将月份号转换为缩写的月份名称。不过,我看不出有其他方法可以走。创建用于转换另一个方向的字典是处理此问题的最佳方法吗?还是有更好的方法将月份名称改为月份编号,反之亦然? 问题答案: 使用模块创建一个反向字典
问题内容: 如何将月份字符串转换为整数? 在单击方法上,我想显示选定的日期,但是如果该日期有一个事件,它应该显示有关该事件的更多信息。检查假日事件的方法需要整数值。 这是代码: 更新: 问题答案: 看到 IDE一演示
问题内容: 我发现的大多数信息都不在python> pandas> dataframe中,因此出现了问题。 我想将1到12之间的整数转换为缩写的月份名称。 我有一个df,看起来像: 我希望df看起来像这样: 问题答案: 您可以结合使用和
问题内容: 我是Java新手。我正在尝试将日期从字符串转换为MMM yyyy格式(2016年3月)。我试过了 一切正常。但是当我使用 它不起作用。帮帮我,如何解决这个问题。 问题答案: 您的格式必须符合您的输入 对于 格式应为(仅使用第二个对象) 完整答案 使用 java-8