有以下变量:
$datetime = '2012-09-09 01:40';
我需要提取小时和分钟,然后将它们转换为分钟。在这个例子中,我需要得到100(1小时40分钟= 60分钟+ 40分钟)。如何使用PHP函数快速完成此操作?
答案 0 :(得分:3)
不建议使用strtotime()
和date()
功能。使用DateTime类。
$datetime = '2012-09-09 01:40';
$d = new DateTime($datetime);
var_dump( $d->format('G') * 60 + $d->format('i') );
答案 1 :(得分:1)
$string = '2012-09-09 01:40';
$epoch = strtotime($string);
echo date('i', $epoch) + (60 * date('H', $epoch));
输出 100
基本上这里发生的是字符串日期转换为Unix/Epoch time。然后,使用date()
,它将分钟数(i)增加到小时数(h)的60倍。
答案 2 :(得分:0)
$datetime = strtotime('2012-09-09 01:40');
$hour = date('H',$datetime);
$min = date('i',$datetime);
echo ($hour*60 + $min);
答案 3 :(得分:0)
您可以像这样使用preg_split
:
$parts=preg_split("/(\d\d):(\d\d)/",$datetime,-1,PREG_SPLIT_DELIM_CAPTURE);
$mins=($parts[1]*60)+$parts[2];
现在,当$datetime
与您的帖子相似时,$ mins = 100