У меня возникла проблема, подскажите пожалуйста как мне прибавить к имеющемуся времени
(например 16:22:00 +2 часа и 15 минут = 18:37:00) и это все загнать в переменную $time;
Это время (16:22:00) я беру из базы, может есть способ разложить его на массивы по символу или как то так....
Спустя 6 минут, 24 секунды (12.12.2009 - 18:35) Romms написал(а):
как добавить точно незнаю... но можно так:
$time="16:22:00";
$tim=explode(":",$time);
$tim[0]=(int) $tim[0]+2;
$tim[1]=(int) $tim[1]+15;
$tim[2]=(int) $tim[2];
echo $tim[0].':'.$tim[1].':'.$tim[2];
Спустя 6 минут, 24 секунды (12.12.2009 - 18:42) Romms написал(а):
А вот так можно додать "0" если число < 10
if ($tim[0]<10) $tim[0]='0'.$tim[0];
if ($tim[1]<10) $tim[1]='0'.$tim[1];
if ($tim[2]<10) $tim[2]='0'.$tim[2];
Спустя 18 часов, 48 минут, 38 секунд (13.12.2009 - 13:30) _Joker_ написал(а):
На самом деле это проще чем кажется на первый взгляд. Я тут недавно писал скрипт для крона, типа что бы определённая задачка запускалась по нужному времени, которое записано в базе данных для каждого человека.
Вообщем вот как я делал.
к примеру у тебя есть такая фишка $time="16:22:00";
берёшь разбиваеш его на части типа так
Получаем три переменные, а потом используем функцию mktime
к примеру у нас есть
И тем самым получаеш время со своими смещениями.
Вообщем вот как я делал.
к примеру у тебя есть такая фишка $time="16:22:00";
берёшь разбиваеш его на части типа так
list($hours, $minutes, $seconds) = explode(":", $time);
Получаем три переменные, а потом используем функцию mktime
к примеру у нас есть
$new_hours = 2;
$new_minutes = 15;
$new_time = date("H:i:s", mktime($hours+$new_hours, $minutes+$new_minutes, $seconds, 12, 13, 2009));
И тем самым получаеш время со своими смещениями.