【问题标题】:PHP time subtraction from 2 variables从 2 个变量中减去 PHP 时间
【发布时间】:2017-03-04 11:05:44
【问题描述】:

我正在尝试在 PHP 中减去两个变量(时间格式,“H:i:s”),i.ex:

$entryscan = '07:15:00';
$exitscan = '16:35:00';

如何获得工作时长? 我的意思是$workduration = $exitscan - $entryscan; 所以,答案是$workduration = '09:20:00';

【问题讨论】:

标签: php datetime duration subtraction


【解决方案1】:

使用php timediff函数。

$datetime1 = new DateTime($entryscan);
$datetime2 = new DateTime($exitscan);
$interval = $datetime1->diff($datetime2);
echo $interval->format('%H hours');

%H 将为您提供 小时 的差异。

%I 将在 分钟 内为您提供差异。

%S 将在 内为您提供差异。

【讨论】:

    【解决方案2】:
    $entryscan = '07:15:00';
    $exitscan = '16:35:00';
    $time1 = new DateTime($entryscan);
    $time2 = new DateTime($exitscan);
    $diffis = $time1->diff($time2);
    echo $workduration = $diffis->format('%H:%I:%S');
    

    @Arshid 我只是编辑你的代码工作正常。

    【讨论】:

      【解决方案3】:

      如果您的 php 版本 >= 5.2,请尝试使用 php DateTime 类

      $entryscan = '07:15:00';
      $exitscan = '16:35:00';
      
      $entryTime = new DateTime($entryscan);
      $exitTime = new DateTime($exitscan);
      $interval = $entryTime->diff($exitTime);
      $workduration = $interval->format('%H:%I:%S');
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2012-07-26
        • 1970-01-01
        • 1970-01-01
        • 2023-04-05
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-11-17
        相关资源
        最近更新 更多