Я получаю дату из базы данных в этом формате
hh:mm:ss
И я хочу добавить это к текущему времени и вернуть обратно в другую таблицу со следующим форматом:
yyyy:mm:dd hh:mm:ss
Предполагая, что вы получаете время из базы данных в переменной $ dbTime, я бы сделал что-то вроде этого:
$timeArray = explode (":", $dbTime ); $newTime = time() + ($timeArray[0]*60*60) + ($timeArray[1]*60) + $timeArray[2]; $finalTime = date('Ymd H:i:s',$newTime);
Может быть, не самый чистый путь, но это вариант 🙂
$a = strtotime($timetoadd); $b = date('U') + $a; $c = date('Ymd H:i:s',$b);
Изменить: попробуйте вместо этого:
$arr = explode(':',$timetoadd); $b = mktime(date('h')+$arr[0],date('i')+$arr[1],date('s')+$arr[2],date('m'),date('d'),date('y')); $c = date('Ymd H:i:s',$b);
Из вашего вопроса я понимаю, что вы хотите, чтобы ваше значение времени из базы данных добавлялось в текущее значение времени. Вот код для этого: –
// hh:mm:ss value you get from your database $yourDateTime = "SOME DATA"; // current date time $currentDateTime = date("Y:m:dh:i:s", time()); // separating date and time $currentDateTimeArray = explode('', $currentDateTime); // adding your time value to current time value $currentDateTimeArray[1] = $yourDateTime; $newDateTime = implode('', $currentDateTimeArray);
Надеюсь это поможет. Благодарю.