在php中添加一个数字


Adding a digit in php

我有两个值,一个用于访问进入,一个用于访问作业中的输出。我想要两个时间的差值。

我有这样的代码:

$totalworkhours = $hoursout - $hoursin;
        if($minsin > $minsout){
            $totalworkhours--;
            $totalworkmins = 60 - ($minsin - $minsout);
        }else{
            $totalworkmins = $minsout - $minsin;
        }
        echo "Total Work TIME: '$totalworkhours:$totalworkmins'<br>";

然而,我注意到,让我们说,如果minsout> minsin我将去else(8:43-3:48),我会得到7:5..

可以使用str_pad()函数。所以应该是

echo "Total Work TIME: '$totalworkhours:" . str_pad($totalworkmins, 2, 0, STR_PAD_LEFT) . "'<br>";

PHP内置了这样的功能。

给你:

$in = new DateTime('2015-07-21 10:50:00');
$out = new DateTime('2015-07-21 12:45:00');
$interval = $in->diff($out);
echo $interval->format('%H:%I:%S');

用一个函数来包装这一切:

function shiftDuration($in, $out)
{
    $inDate = new DateTime($in);
    $outDate = new DateTime($out);
    $interval = $inDate->diff($outDate);
    return $interval->format('%H:%I:%S');
}
$duration = shiftDuration('2015-07-21 10:50:00', '2015-07-21 12:45:00')
echo "Total Work TIME: $duration"

关于PHP DateTime的更多信息可以在这里找到