2016-03-22 1 views
0

Привет У меня есть строка даты, взятая из базы данных. И это какДобавить Дата и время в PHP

$date = '2016-03-21 11:00:00'; 

И у меня есть строка времени, взятая из базы данных.

$time = '02:30:00' 

Есть ли способ добавить эти два и получить как они в PHP?

$newtime = '2016-03-21 13:30:00'; 
+1

, если они идут из базы данных (предположительно MySQL) , почему бы не добавить его в db, поскольку они (надеюсь) имеют значения datetime/time? mysql отлично справляется с математикой 'select datefimefield + timefield'. –

ответ

2

Использование preg_replace превратить ваше $time значения:

$date = '2016-03-21 11:00:00'; 
$time = '02:30:00'; 

$str = "$date + ".preg_replace('/:(\d+):(\d+)$/',' hours, \1 minutes, \2 seconds',$time); 
$date = new DateTime($str); 
echo $date->format('Y-m-d H:i:s'); 

Напечатает:

2016-03-21 13:30:00 

С preg_replace преобразует 02:30:00 в 02 hours, 30 minutes, 00 seconds и, отложив его $date, мы получим эту строку :

2016-03-21 11:00:00 + 02 hours, 30 minutes, 00 seconds 

мнений принимается DateTime класс.


2

Я уверен, что есть лучший способ сделать это, но:

Смежные вопросы