@@ 399-408 (lines=10) @@ | ||
396 | $minute = (int) $minute; |
|
397 | $second = (int) $second; |
|
398 | ||
399 | if ($second < 0) { |
|
400 | $minute += floor($second / 60); |
|
401 | $second = 60 - abs($second % 60); |
|
402 | if ($second == 60) { |
|
403 | $second = 0; |
|
404 | } |
|
405 | } elseif ($second >= 60) { |
|
406 | $minute += floor($second / 60); |
|
407 | $second = $second % 60; |
|
408 | } |
|
409 | if ($minute < 0) { |
|
410 | $hour += floor($minute / 60); |
|
411 | $minute = 60 - abs($minute % 60); |
|
@@ 409-418 (lines=10) @@ | ||
406 | $minute += floor($second / 60); |
|
407 | $second = $second % 60; |
|
408 | } |
|
409 | if ($minute < 0) { |
|
410 | $hour += floor($minute / 60); |
|
411 | $minute = 60 - abs($minute % 60); |
|
412 | if ($minute == 60) { |
|
413 | $minute = 0; |
|
414 | } |
|
415 | } elseif ($minute >= 60) { |
|
416 | $hour += floor($minute / 60); |
|
417 | $minute = $minute % 60; |
|
418 | } |
|
419 | ||
420 | if ($hour > 23) { |
|
421 | $hour = $hour % 24; |
|
@@ 440-449 (lines=10) @@ | ||
437 | return (int) \PhpOffice\PhpSpreadsheet\Shared\Date::excelToTimestamp(\PhpOffice\PhpSpreadsheet\Shared\Date::formattedPHPToExcel(1970, 1, 1, $hour, $minute, $second)); // -2147468400; // -2147472000 + 3600 |
|
438 | case Functions::RETURNDATE_PHP_OBJECT: |
|
439 | $dayAdjust = 0; |
|
440 | if ($hour < 0) { |
|
441 | $dayAdjust = floor($hour / 24); |
|
442 | $hour = 24 - abs($hour % 24); |
|
443 | if ($hour == 24) { |
|
444 | $hour = 0; |
|
445 | } |
|
446 | } elseif ($hour >= 24) { |
|
447 | $dayAdjust = floor($hour / 24); |
|
448 | $hour = $hour % 24; |
|
449 | } |
|
450 | $phpDateObject = new \DateTime('1900-01-01 ' . $hour . ':' . $minute . ':' . $second); |
|
451 | if ($dayAdjust != 0) { |
|
452 | $phpDateObject->modify($dayAdjust . ' days'); |