php - 日期差未正确输出
问题描述
我有以下代码来查找天、小时和分钟的两个日期之间的差异:
$date1=date_create("2019-01-01");
$date2=date_create("2019-02-01");
$diff=date_diff($date1,$date2);
echo $diff->format("%d day, %h hour, %i minute");
exit;
但是当我运行这段代码时,我得到了这个意外的输出:
0 day, 0 hour, 0 minute
有人知道我做错了什么吗?
解决方案
格式规范打印一个月中各%d
天之间的天数差异,在您的情况下为 0。如果您要打印月份差异(使用%m
),您会看到它是 1。如果您想要总天数,你需要使用%a
,即
echo $diff->format("%a day, %h hour, %i minute");
推荐阅读
- php - PDFLib 已安装但在代码中不可用或通过 phpinfo() 可见
- android - Android BluetoothHeadset getConnectedDevices() 列表为空
- php - 从另一个相关表中的计数仅为一个的表中选择
- java - 哪个先中断,Mockito 还是 Java 泛型?
- linux - 使用读/写文件的管道()的替代实现
- android - RecyclerView 后按时不出现
- amazon-web-services - 在 aws.com 上手动删除后,无服务器 API 网关资源未恢复
- typescript - 在堆栈之间导航时出现 React Navigation 5 类型错误
- foreach - SwiftUI:ForEach 过滤器布尔值
- c++ - std::assignable_from 可能实现背后的基本原理