我正在尝试将 6783 分钟转换为天、小时和分钟,但无法获得正确的小时数。现在显示 6783
是 5 天 113 小时 3 分钟
。如您所见,时间完全错误!这是我当前使用的代码:
define('CONFIGURATION_HOURSPERDAY', '24');
define('CONFIGURATION_HOURS', intval((string)$stats->result->logonMinutes / 60));
define('ACTIVITY_DAYS', round(CONFIGURATION_HOURS / CONFIGURATION_HOURSPERDAY));
define('ACTIVITY_HOUR', intval((string)$stats->result->logonMinutes / 60));
define('ACTIVITY_MINUTES', ((string)$stats->result->logonMinutes % 60));
if(ACTIVITY_DAYS > 0) {
echo ACTIVITY_DAYS.' '.(ACTIVITY_DAYS == 1 ? 'day' : 'days');
}
echo ', '.ACTIVITY_HOUR.' '.(ACTIVITY_HOUR == 1 ? 'hour' : 'hours');
echo ', and '.ACTIVITY_MINUTES.' '.(ACTIVITY_MINUTES == 1 ? 'minute' : 'minutes');
$stats->result->logonMinutes
包含我在 EVE Online 中在线的总分钟数,即 6783 分钟。
我应该怎么做才能显示正确的小时数?
提前致谢。
最佳答案
您忘记了将小时和分钟换行。
define('ACTIVITY_HOUR', intval((string)$stats->result->logonMinutes / 60) % 24);
并且...转换为字符串
来划分某些内容没有多大意义。
关于php - 从分钟正确计算小时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13832001/