Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Отнятие времени

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (3): [1] 2 3 »   

> Без описания
event
Отправлено: 18 Июля, 2013 - 23:45:04
Post Id


Частый посетитель


Покинул форум
Сообщений всего: 542
Дата рег-ции: Май 2011  


Помог: 0 раз(а)




Привет, есть такое код:

PHP:
скопировать код в буфер обмена
  1. <?PHP
  2.  
  3. $one = "2013-07-18 23:20:25";
  4. $two = "2013-07-18 23:40:31";
  5.  
  6. ?>


Как можно посчитать сколько времени прошло между датами?
 
 Top
EuGen Администратор
Отправлено: 19 Июля, 2013 - 00:05:54
Post Id


Профессионал


Покинул форум
Сообщений всего: 9095
Дата рег-ции: Июнь 2007  
Откуда: Berlin


Помог: 707 раз(а)




event
PHP:
скопировать код в буфер обмена
  1. $rDate=new DateTime($one);
  2. var_dump($rDate->diff(new DateTime($two)));

?


-----
Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
 
 Top
event
Отправлено: 19 Июля, 2013 - 00:08:29
Post Id


Частый посетитель


Покинул форум
Сообщений всего: 542
Дата рег-ции: Май 2011  


Помог: 0 раз(а)




EuGenFatal error: Call to undefined method DateTime::diff() in ...

PHP 5.2
 
 Top
EuGen Администратор
Отправлено: 19 Июля, 2013 - 00:29:16
Post Id


Профессионал


Покинул форум
Сообщений всего: 9095
Дата рег-ции: Июнь 2007  
Откуда: Berlin


Помог: 707 раз(а)




Да. Обновляйтесь. Иначе чем дальше, тем хуже. Для 5.2 - например, в секундах:

- в часах - поделите на 3600, в днях (сутках) - поделите ещё на 24.


-----
Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
 
 Top
event
Отправлено: 19 Июля, 2013 - 17:13:03
Post Id


Частый посетитель


Покинул форум
Сообщений всего: 542
Дата рег-ции: Май 2011  


Помог: 0 раз(а)




EuGen
PHP:
скопировать код в буфер обмена
  1. $one = "2013-07-18 23:20:25";
  2. $two = "2013-07-18 23:40:31";
  3.  
  4. echo strtotime($two) - strtotime($one) / 3600;


Получаю: 1373798314.66
 
 Top
Мелкий Супермодератор
Отправлено: 19 Июля, 2013 - 17:16:18
Post Id



Активный участник


Покинул форум
Сообщений всего: 11926
Дата рег-ции: Июль 2009  
Откуда: Россия, Санкт-Петербург


Помог: 618 раз(а)




event, дык приоритет деления над вычитанием никто не отменял.


-----
PostgreSQL DBA
 
 Top
EuGen Администратор
Отправлено: 19 Июля, 2013 - 17:21:19
Post Id


Профессионал


Покинул форум
Сообщений всего: 9095
Дата рег-ции: Июнь 2007  
Откуда: Berlin


Помог: 707 раз(а)





Так Вы ничему не научитесь.


-----
Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
 
 Top
event
Отправлено: 19 Июля, 2013 - 18:07:15
Post Id


Частый посетитель


Покинул форум
Сообщений всего: 542
Дата рег-ции: Май 2011  


Помог: 0 раз(а)




[php]$one = "2013-07-18 23:20:25";
$two = "2013-07-18 23:40:31";

echo (strtotime($two) - strtotime($one)) / 3600;

die;[/php

0.335 - но так же не должно быть...
 
 Top
soffrick
Отправлено: 19 Июля, 2013 - 18:12:47
Post Id



Посетитель


Покинул форум
Сообщений всего: 379
Дата рег-ции: Май 2012  
Откуда: Россия, Москва


Помог: 17 раз(а)




а как должно быть?
(Добавление)

(Отредактировано автором: 19 Июля, 2013 - 18:16:53)



-----
Правильный вопрос - уже половина правильного ответа!

p.s. индусы повсюду, будьте осторожны!
 
 Top
EuGen Администратор
Отправлено: 19 Июля, 2013 - 18:15:57
Post Id


Профессионал


Покинул форум
Сообщений всего: 9095
Дата рег-ции: Июнь 2007  
Откуда: Berlin


Помог: 707 раз(а)




event пишет:
0.335 - но так же не должно быть...

Так и должно быть, потому что указанный временной интервал - это чуть более 20 минут, то есть около 0.33 часа.


-----
Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
 
 Top
event
Отправлено: 19 Июля, 2013 - 18:18:17
Post Id


Частый посетитель


Покинул форум
Сообщений всего: 542
Дата рег-ции: Май 2011  


Помог: 0 раз(а)




спасибо
(Добавление)
Ребят, а как можно отнять это дело, и записать в таком формате: 00:00:00 ?
 
 Top
IllusionMH
Отправлено: 19 Июля, 2013 - 18:45:29
Post Id



Активный участник


Покинул форум
Сообщений всего: 4254
Дата рег-ции: Февр. 2011  
Откуда: .kh.ua


Помог: 242 раз(а)




event, ну хоть чуть чуть напрячься и посмотреть темы посвященные работе с датами. Курить date
 
 Top
event
Отправлено: 19 Июля, 2013 - 18:53:48
Post Id


Частый посетитель


Покинул форум
Сообщений всего: 542
Дата рег-ции: Май 2011  


Помог: 0 раз(а)




IllusionMH, про date знаю, но не понимаю как разложить саму дату чтобы забить ее в функцию Радость
 
 Top
IllusionMH
Отправлено: 19 Июля, 2013 - 19:02:09
Post Id



Активный участник


Покинул форум
Сообщений всего: 4254
Дата рег-ции: Февр. 2011  
Откуда: .kh.ua


Помог: 242 раз(а)




event, тогда какой там должен быть второй параметр?
 
 Top
teddy
Отправлено: 19 Июля, 2013 - 19:03:27
Post Id


Участник


Покинул форум
Сообщений всего: 1462
Дата рег-ции: Апр. 2013  


Помог: 91 раз(а)




*тут была фигня, с которой разобрались*

(Отредактировано автором: 19 Июля, 2013 - 19:29:04)

 
 Top
Страниц (3): [1] 2 3 »
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB