Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей.
Здесь обсуждаются безопасность, программирование, технологии и многое другое.
Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
 |
Разница во времени на php |

24.05.2008, 00:19
|
|
Участник форума
Регистрация: 10.01.2006
Сообщений: 193
Провел на форуме: 553876
Репутация:
81
|
|
Разница во времени на php
Кому-нибудь известен скрипт на php который считает разницу во времени между двумя врменами. Скажем 1540 и 1820 - 2 часа 40 минут. Что бы адекватно считалась разница между прошлым и следующим днем: 2100 и 0200. Знаю реализовать несложно, но много кода писать..
Реализацию с time() не предлагайте ибо нет конкретных дат, только время (+/- одни сутки).
|
|
|

24.05.2008, 00:33
|
|
Постоянный
Регистрация: 30.08.2007
Сообщений: 773
Провел на форуме: 3069349
Репутация:
808
|
|
Реализацию с time() не предлагайте ибо нет конкретных дат, только время (+/- одни сутки).
0900 и 0901. Прошла минута или сутки?
Знаю реализовать несложно, но много кода писать..
Точно, пусть кто-нибудь другой напишет =)
|
|
|

24.05.2008, 00:47
|
|
Banned
Регистрация: 06.01.2008
Сообщений: 413
Провел на форуме: 1301036
Репутация:
1334
|
|
1) Функция string microtime(void)
Возвращает строку типа "msec sec", где msec - количество миллисекунд и sec - текущее время в секундах.Эта функция работает только в операционных системах, поддерживающих системный
вызов gettimeofday().
2) Функция
array explode(string separator, string string [, int
limit])
Делит строку string в соответствии с разделителем separator и записывает все части (или не все, если указано количество частей limit) в массив, который функция выдает в качестве результата.
3) Функция
void printf (string format [, mixed args])
Эта
функция полностью аналогична своей C версии. Она выводит аргументы (args), по заданному формату format
Параметры:
format - строковый формат вывода данных
args - аргументы, для форматирования
PHP код:
//Считываем текущее время
$mtime = microtime();
//Разделяем
секунды и миллисекунды
$mtime =
explode(" ",$mtime);
//Составляем одно число из секунд и
миллисекунд
$mtime = $mtime[1] +
$mtime[0];
//Записываем стартовое время в переменную
$tstart = $mtime;
Теперь
в самом конце, после кода, время выполнения которого нам надо
засечь, пишем:
//Делаем все то же самое, чтобы
получить текущее время
$mtime =
microtime();
$mtime = explode("
",$mtime);
$mtime = $mtime[1] +
$mtime[0];
//Записываем время окончания в другую переменную
$tend = $mtime;
//Вычисляем разницу
$totaltime = ($tend - $tstart);
//Выводим не экран
printf ("Страница
сгенерирована за %f секунд !", $totaltime);
Обратите внимание, что простой вывод с помощью print или echo в данном случае не подходит, так как мы имеем дело с переменной не целочисленного типа, поэтому надо обязательно указать для PHP формат вывода такой переменной.
Последний раз редактировалось cash$$$; 24.05.2008 в 00:50..
|
|
|

24.05.2008, 00:53
|
|
Флудер
Регистрация: 20.11.2006
Сообщений: 3,316
Провел на форуме: 16641028
Репутация:
2371
|
|
http://ru2.php.net/manual/ru/function.mktime.php
|
|
|
|
 |
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|