我试图将6783分钟转换为天,小时和分钟,但我无法确定正确的时间。现在它显示6783
是5 days, 113 hours, and 3 minutes
。正如你所看到的那样,时间是完全错误的!这是我目前正在使用的代码:
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分钟。
我应该怎么做才能显示正确的小时数?
提前致谢。
答案 0 :(得分:2)
你忘了包括小时和分钟。
define('ACTIVITY_HOUR', intval((string)$stats->result->logonMinutes / 60) % 24);
而且......向string
投掷以分割某些内容并没有多大意义。
答案 1 :(得分:0)
$start = 6783;
$days = $start / 1440;
$start = $start % 1440;
$hours = $start / 60;
$start = $start % 60;
$minutes = $start;