1

合計時間の合計を計算しているときに小さな問題があります

私の勤務時間は次のようなものです。

Day1 - 12:23 Hours
Day2 - 11:43 Hours
Day3 - 10:18 Hours

どうすればphpで入手できますか?前もって感謝します

4

3 に答える 3

3

次のように追加するだけです。

$day1hours = "12:23";
$day2hours = "11:43";
$day1 = explode(":", $day1hours);
$day2 = explode(":", $day2hours);

$totalmins = 0;
$totalmins += $day1[0] * 60;
$totalmins += $day1[1];
$totalmins += $day2[0] * 60;
$totalmins += $day2[1];

$hours = $totalmins / 60;
$minutes = $totalmins % 60;

$totalhours = "$hours.$minutes";

このように非常に複雑ですが、それは単にアイデアを示すためのものです。分に計算し直し、分を合計してから、時間に計算し直します。

PHPは、日付と時刻を非常に広範囲にサポートしていることに注意してください。それを使用することを検討してください:http ://www.php.net/manual/en/book.datetime.php

于 2013-03-13T12:06:07.983 に答える
1

この手法により、正確な合計時間と分が得られます。上記の答えは、00:30と00:45を追加すると1.25.15になります

<?php
$hourMin = array("00:30","00:45"); //an Multiple Hour:Minutes array
$hours = 0;
$mins  = 0;
  foreach($hourMin as $val)
  {
      $explodeHoursMins = explode(':',$val);
      $hours += $explodeHoursMins[0];
      $mins  += $explodeHoursMins[1];
  }

  $minToHours =  date('H:i', mktime(0,$mins)); //Calculate Hours From Minutes
  $explodeMinToHours = explode(':',$minToHours);
  $hours += $explodeMinToHours[0];
  $finalMinutes = $explodeMinToHours[1];
  echo $hours." : ".$finalMinutes;
?>
于 2018-02-02T11:46:04.767 に答える
0

この関数を使用して時間計算を計算すると、機能します

function sumTime($initialHour, $finalHour) {
    $h = date('H', strtotime($finalHour));
    $m = date('i', strtotime($finalHour));
    $s = date('s', strtotime($finalHour));
    $tmp = $h." hour ".$m." min ".$s." second";
    $sumHour = $initialHour." + ".$tmp;
    $newTime = date('H:i:s', strtotime($sumHour));
    return $newTime;
 };

詳細については、次のリンクを参照してください:phpでの時間計算

于 2013-03-13T12:16:50.087 に答える