2015-11-10 4 views
1

у меня есть этот код в моем HTML частиотличается между двумя временными тегами HTML

<input id="intime" name="intime" type="time"> 
<input id="outtime" name="outtime" type="time"> 

и в моем PHP часть

$t = $intime - $outtime; 

результат $ т равна только разница между часами мне тоже нужна разница между минутами, например (14:20 - 12:10 = 02:10)

+0

Какова стоимость $ intime и $ outtime перед вычитанием? – MeanGreen

+0

@MeanGreen $ intim = 09:00 и $ outtime = 11:30 – Anas

ответ

0

PHP код

$diff = strtotime($intime) - strtotime($outtime); 
echo date("h:i", strtotime($diff)); 

или вы можете попробовать

$diff = abs(strtotime($intime) - strtotime($outtime)); 
$hours = floor($diff/ (60*60)); 
$minuts = floor($diff/60); 
+0

первый код дает мне результат равный 1:00, даже я меняю $ intime и $ outtime, а второй код может дать мне правильный результат, но мне нужно исправить это btw результат $ hours = 6 и $ minuts = 360 whet $ intime = 08:00 и $ outtime = 14:00 – Anas

0

Попробуйте это,

$firstTime = $_GET['intime']; // or POST 
$secondTime = $_GET['outtime']; 

list($firstMinutes, $firstSeconds) = explode(':', $firstTime); 
list($secondMinutes, $secondSeconds) = explode(':', $secondTime); 

$firstSeconds += ($firstMinutes * 60); 
$secondSeconds += ($secondMinutes * 60); 
$minute_difference = $secondSeconds - $firstSeconds; 
$hour_difference = $difference/60; 
+0

спасибо за ваш ответ ... $ разница дает результат 360, и я не делаю знаю, что это такое, потому что я ставлю одно и то же значение минут в $ firstTime и $ secondTime ... в любом случае благодарю вас за ваш ответ, потому что вы дали мне идею решить эту проблему, и я скажу это как ответ^_^... thank вы – Anas

+0

360 означает 360 минут. (например: с 06:00 до 12:00). В этом разница между двумя разными вводами. У меня есть изменение, чтобы получить часовую разницу. В любом случае, я рад, что смогу помочь – 73ey

0

я попытался это код и он решил мою проблему ...

$intime = explode(':',@$_POST['intime']); 
$outtime = explode(':',@$_POST['outtime']); 
$hours = (($outtime[0]-$intime[0])*60+($outtime[1]-$intime[1]))/60; 
$hours = floor($hours); 
$minutes = (($outtime[0]-$intime[0])*60+($outtime[1]-$intime[1]))%60; 
echo $hours.":".$minutes; 

благодарит за сообщение^_^