当前位置: 首页 > 面试题库 >

在PHP中将数字转换为月份名称

陶烨赫
2023-03-14
问题内容

我有这个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,请更改FM。所有可用格式选项的列表都可以在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