如何知道年月日期前三个月
How to know three months before a yearmonth date
从 php 函数得到的只有年和月相加的日期。假设它是 201403 或 201412。如何通过 php 使用相同的格式获得该日期之前的 03 个月,即第一个为 201312,第二个为 201409?
由于该日期格式不标准,您需要使用 DateTime::createFromFormat()
来解析日期。然后你可以使用 DateTime::modify()
得到你想要的日期。
$date = DateTime::createFromFormat('Ym', '201403');
$date->modify('first day of this month')->modify('-3 months');
echo $date->format('Ym');
创建一个真正的日期作为一个月的第一天;进行 3 个月的调整,return 新日期的格式仅为年和月
$yearMonth = '201403';
$date = new DateTime($yearMonth . '01');
$date->sub(new DateInterval('P3M'));
echo $date->format('Ym');
从 php 函数得到的只有年和月相加的日期。假设它是 201403 或 201412。如何通过 php 使用相同的格式获得该日期之前的 03 个月,即第一个为 201312,第二个为 201409?
由于该日期格式不标准,您需要使用 DateTime::createFromFormat()
来解析日期。然后你可以使用 DateTime::modify()
得到你想要的日期。
$date = DateTime::createFromFormat('Ym', '201403');
$date->modify('first day of this month')->modify('-3 months');
echo $date->format('Ym');
创建一个真正的日期作为一个月的第一天;进行 3 个月的调整,return 新日期的格式仅为年和月
$yearMonth = '201403';
$date = new DateTime($yearMonth . '01');
$date->sub(new DateInterval('P3M'));
echo $date->format('Ym');