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 Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


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

> Описание: Как сделать?
heeler
Отправлено: 07 Января, 2009 - 18:21:44
Post Id


Новичок


Покинул форум
Сообщений всего: 12
Дата рег-ции: Янв. 2009  


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




Добрый день!

Подскажите, пожалуйста, как вывести разницу между двумя переменными с датами и временем, т. е. для примера:

CODE (text):
скопировать код в буфер обмена
  1. $first_data = "2009-01-07:34:44"
  2. $last_data = "2009-01-07 18:46:07"


нужно получить $interval по типу:

CODE (text):
скопировать код в буфер обмена
  1. $interval = $last_data - $first_data;


Как это реализовать?
Помогите, пожалуйста.
 
 Top
valenok
Отправлено: 07 Января, 2009 - 19:01:04
Post Id



Здесь могла бы быть ваша реклама


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


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




Если из БД то при помощи DATE_SUB()
если даты генерируется внутри скрипта, то mktime()
$first_data = "2009-01-07 :34:44"
$last_data = "2009-01-07 18:46:07"
это никак не вычесть ибо это строки.


-----
Truly yours, Sasha.
 
My status
 Top
heeler
Отправлено: 07 Января, 2009 - 19:06:36
Post Id


Новичок


Покинул форум
Сообщений всего: 12
Дата рег-ции: Янв. 2009  


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




А как эти строки к датам преобразовать?
Они внутри скрипта генерятся...
 
 Top
Champion Супермодератор
Отправлено: 07 Января, 2009 - 19:45:51
Post Id



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


Покинул форум
Сообщений всего: 4350
Дата рег-ции: Авг. 2008  
Откуда: Москва


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




heeler, может, прочитаешь все-таки? Во второй теме уже тебе говорят
valenok пишет:
 
 Top
heeler
Отправлено: 07 Января, 2009 - 20:34:16
Post Id


Новичок


Покинул форум
Сообщений всего: 12
Дата рег-ции: Янв. 2009  


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




Champion пишет:
heeler, может, прочитаешь все-таки? Во второй теме уже тебе говорят
valenok пишет:


Да читал я...
Правильно я понял, что нужно переменную эту строковую разбить и передать каждое значение как один из параметров mktime?
А результат работы функции присвоить переменной, которая и будет содержать дату...
 
 Top
valenok
Отправлено: 07 Января, 2009 - 21:45:31
Post Id



Здесь могла бы быть ваша реклама


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


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




нет, нужно просто не генерировать эту строковую переменную, а пользоваться функцией time()
А там на сайте где нужно будет вывести дату в этом виде, если нужно будет,
воспользуйтесь функцией date() со вторым параметром.
Вам бы и о первом не помешало бы почитать )


-----
Truly yours, Sasha.
 
My status
 Top
Champion Супермодератор
Отправлено: 08 Января, 2009 - 08:59:35
Post Id



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


Покинул форум
Сообщений всего: 4350
Дата рег-ции: Авг. 2008  
Откуда: Москва


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




Вот на самом деле, почему многие (новички) делают выборку из БД без всяких условий, а потом средствами PHP выбирают то что надо. На SQL проще и быстрее это все сделать, да и памяти php меньше будет использовать, чем если всю выборку в массивы забивать
 
 Top
Импртать
Отправлено: 02 Февраля, 2009 - 23:28:35
Post Id


Новичок


Покинул форум
Сообщений всего: 2
Дата рег-ции: Февр. 2009  


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




PHP:
скопировать код в буфер обмена
  1. $first=strtotime($first_data);
  2. $last=strtotime($last_data);
  3. echo date('m-d h:i', abs($last-$first));
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Напишите за меня, пожалуйста »


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



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

 
Powered by ExBB FM 1.0 RC1. InvisionExBB