Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Прибавить часы к времени
 
 автор: ols   (06.08.2008 в 02:37)   письмо автору
 
 

Есть переменная $hour, в ней задается кол-во часов. И есть $timeban = date('Y-m-d-H-i-s');
Подскажите как можно к $timeban прибавить часы, которые заданы в переменной $hour ???

  Ответить  
 
 автор: DEM   (06.08.2008 в 02:46)   письмо автору
 
   для: ols   (06.08.2008 в 02:37)
 

Наверное не совсем правильно, но всё же:

<?
//$hour - кол-во часов
$timeban date('Y-m-d-H-i-s');
$exp explode("-"$timeban);
$exp[3] += $hour;
if(
$exp[3]>24)
{
  
$exp[3]-=24;
$exp[2]++;
}

echo 
$exp;
?>


Правда тогда будут проблемы с днями в месяце и т.д.

Как я понял это время бана, не лучше ли его хранить в секундах ( time(); )? А потом просто сверять, прошло время бана или нет.

  Ответить  
 
 автор: ols   (06.08.2008 в 02:59)   письмо автору
 
   для: DEM   (06.08.2008 в 02:46)
 

Тоесть если я правильно понял, то например время бана пусть будет 2 часа. Эти 2 часа перевести в секунды, прибавить к ним настоящее время (тоже в секундах) и записать в базу. А потом когда пользователь авторизируется, сверять, если настоящее время больше времени бана, то значит авторазбан? Так?

  Ответить  
 
 автор: DDK   (06.08.2008 в 03:21)   письмо автору
 
   для: ols   (06.08.2008 в 02:59)
 

Да, время хранить удобнее в Unix-time. К нему легче прибавлять интервалы, вычитать, делить. умножать и т.д. И самое главное - его легче сравнивать.

  Ответить  
 
 автор: DDK   (06.08.2008 в 03:18)   письмо автору
 
   для: ols   (06.08.2008 в 02:37)
 


<?
$hours 
6;
$timeban date('Y-m-d-H-i-s');
echo 
$timeban."<br>";
$t strptime($timeban'%Y-%m-%d-%H-%M-%S');
$timeban mktime($t['tm_hour'], $t['tm_min'], $t['tm_sec'], $t['tm_mon']+1$t['tm_mday'], $t['tm_year']+1900);
$timeban date('Y-m-d-H-i-s'$timeban + ($hours 3600));
echo 
$timeban;
?>

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования