php - 为什么 DateTime::diff 没有显示正确的分钟数?
问题描述
我正在尝试以分钟为单位计算时间之间的差异,并且每次尝试它都会显示不正确的时间。我不确定我在这里做错了什么。下面是我的代码。任何帮助将不胜感激。
$time_now = new DateTime("now",new DateTimeZone("America/New_York"));
$future_order_time = new DateTime("7:00 pm",new DateTimeZone("America/New_York"));
$interval = $time_now->diff($future_order_time);
echo $interval->format("%i");
解决方案
DateTime::diff 返回天、小时、分钟(和秒、微秒)的差异。您必须考虑账单中的日期和时间。
$diffMinutes = ($interval->days * 24 + $interval->h) * 60 + $interval->i;
推荐阅读
- preg-match - 如何禁止电话字段中的重复号码,如 1111111 或 222222
- php - 使用 PHP 自动下载文件 .ZIP
- amazon-web-services - AWS Transfer Family API Gateway 身份提供商是否需要使用 Terraforms `aws_apigatewayv2_api` 或`aws_api_gateway_rest_api`?
- javascript - 使用onclick事件在div标签中附加CKEditor?
- amazon-web-services - 从本地机器设置到 api 网关的隧道
- azure - Azure 函数在本地运行,从门户运行时失败
- kubernetes - 完整的 pod 状态列表
- reactjs - 如何在 cra 中使用 Nextjs
- python - 通过 API 的 CSV - 只能连接 str
- python - 如何通过使用 python 给出条件来自动复制文件?