PHP时间拆分问题?

新手上路,请多包涵

已知
$beginDate = "2018-07";
$endDate = "2018-11";

如何用代码实现

例如这个月是 11 月,那

2018-11 本月份
2018-10 超过1月
2018-09 超过2月
2018-08 超过3月
2018-07 超过4月

7月份之后的时间就默认 “超过4月”

阅读 1.9k
3 个回答

可以使用DateTime类来实现,DateTime也是官方推荐的进行时间计算的方法

$beginDate = '2018-07';
$endDate = '2018-02';

$start = new DateTime($beginDate);
$end = new DateTime($endDate);

echo sprintf('过去 %d 月', $end->diff($start)->m > 4 ? 4 : $end->diff($start)->m);

date('m', strtotime('2018-07'))
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题