2017-09-23 8 views
0

나는 두 시간 값을 아래와 같이있다 :PHP에서 두 시간 값의 중간을 찾는 방법?

28:50 28:50이 오전 4시 50분

을 암시

$ A = 22시 15분

$의 B = 어떻게 할 이 두 시간 값의 중간을 찾으십니까? 간단한 수학에서는 아래와 같이 될 것이다 :

의 $ C = ($ B- $ a) 2

* (라인 편집 아래) 에코 $ C를 + $ A /;

물론 간단하지는 않습니다. Google을 사용하여 어디에서나 검색했지만 헛된 것입니다.

미리 감사드립니다.

+0

있습니까 : 아래 난에 대한 코드 찾고 있었어요입니까? –

+0

을 분 또는 초로 변환하고 간단한 수학 평균을 수행 한 다음 필요한 형식으로 다시 변환하십시오. – Calimero

+0

문제를 해결 했습니까? – VK321

답변

1

timestamps으로 작업하시는 것이 강력하게 권장됩니다.

// Assuming $b and $a as timestamps 
$c = ($b-$a)/2; 
echo date('H:i', $c); 
+0

그래서, 당신은 시간에 날짜 값을 추가하고, 유닉스 타임 스탬프로 변환 한 다음, 그 계산을하는 것을 의미합니까? 나는 그 친구를 시험해 볼 것이다, 고마워! – Beginner

+0

가능할 때마다 시간 문자열을 생략하고 대신 시간 소인을 사용하는 것이 가장 좋습니다. 이것은 당신을 도울지도 모른다 : [php datetime reference] (http://php.net/manual/en/ref.datetime.php). –

0

난 내가 너희들의 도움이 코딩 할 수 있었다 기뻐요 전혀 지난 5 년 동안 아무것도 코드,하지만하지 않았다 .. 여기 : 그런 다음 당신은 단순히 다음을 수행 할 수 이러한 문자열이나 타임 스탬프는

<? 
header("Cache-Control: no-store, no-cache, must-revalidate, max-age=0"); 
header("Cache-Control: post-check=0, pre-check=0", false); 
header("Pragma: no-cache"); 
?> 

<form action="" method="post"> 
Date-Time 1: <input type="text" name="time1"><br> 
Date-Time 2: <input type="text" name="time2"><br> 
<input type="submit"> 
</form> 


<? 

if (!empty($_POST)) 
{ 

$time1 = $_POST["time1"]; 
$time2 = $_POST["time2"]; 

// echo $time1 . "<br>"; 

$utime1 = strtotime($time1); 
$utime2 = strtotime($time2); 

$temp = $utime2 - $utime1; 
$temp = $temp/2; 

$MidTime = $utime1 + $temp; 


echo "Time 1: " . $time1 . "<br>"; 
echo "Time 2: " . $time2 . "<br><br>"; 

echo "U-Time 1: " . $utime1 . "<br>"; 
echo "U-Time 2: " . $utime2 . "<br><br>"; 

echo "UTime-2 minus UTime-1 in Unix: " . $temp . "<br><br>"; 


echo "Mid Time: " . gmdate("Y-m-d H:i:s ", $MidTime); 

} 


?> 

enter image description here