Главная | PHP | MYSQL | JavaScript | Joomla | SEO | HTML\CSS | SOFT | Разное | Об авторе | Услуги

PHP, сложить даты, работа с датами

Автор: Alex Leo | Категория: PHP | Дата: 2011-05-31 08:20:00
Сегодня с утра помогал хорошему другу с его проектом. Вводили новые фишки на сайте, продажа ключей их авторизация и отслеживание по времени :)


Довольном много пришлось повозиться с датами, и причем уже не первый раз. Поэтому было решено выложить сюда куски кода из тех скриптов.

#Вот так я храню время в MYSQL
echo time(); //выведет на экран текущее время в UNIX формате 1337274203
#Преобразовываем формат 1337274203 к нормальному виду
echo date( 'Y.m.d H:i:s',time()); //выведет на экран 2012.05.17 21:05:29
#Преобразование в UNIX 2012год 2месяц 16число 13часов 0минут 15 секунд
echo mktime( 13,0,15,2,16,2012 ); //выведет на экран 1388916855

После оплаты и сверения кодов, сразу выставляется время - до которого будет действовать этот код.

# Получаем текущее время с сервера
$date = new DateTime(date( 'd F Y H:i:s', time()));
# Прибавляем к дате дни
$date->modify('+30 day');
# Производим модификацию в нужный нам формат времени
$mm_data = $date->format('m/d/Y H:i:s');


Далее нам надо по крону просто уже сравнивать, не настал ли час Х, т.к у меня время измеряется в днях, то крон скрипт я запускаю раз в день. И сравниваю время следующим образом.

# Функция возвращяет разницу по времени
function raznica_po_vremeni($old_date, $new_date, $type) {
$offset = strtotime($new_date . " UTC") - strtotime($old_date . " UTC");
if( $type == 'days'){$return_time = round($offset/60/60/24,1);}
if( $type == 'hours'){$return_time = round($offset/60/60,1);}
if( $type == 'minyte'){$return_time = round($offset/60,1);}
if( $type == 'second'){$return_time = $offset;}
return $return_time;
}

#Получаем сколько прошло дней с 01/29/2012 00:00:00 до текущего времени
$temp_time_left = raznica_po_vremeni( '01/29/2012 12:15:00', date( 'm/d/Y H:i:s', time()), 'days');
echo $temp_time_left;

#Получаем сколько прошло часов с 01/29/2012 00:00:00 до текущего времени
$temp_time_left = raznica_po_vremeni( '01/29/2012 12:15:00', date( 'm/d/Y H:i:s', time()), 'hours');
echo $temp_time_left;


Тэги: php сложить даты, php вычесть даты, php прибавить к дате дни

Загрузка комментариев...
Оставить комментарий:
Имя:
Email:
URL:
[ Оставить комментарий ]
Следить за новостями:

С кем я работаю:
eTXT - дешевые и качественные тексты, от 15 руб. за рерайт.
GoGetLinks - покупка и продажа вечных ссылок, пожалуй лучший сервис.
GetGoodLinks - покупка и продажа вечных ссылок, цены ниже и неплохое качество.
Sape - покупка и продажа временных ссылок, динозавр на рынке ссылок.
TrustLink - покупка и продажа временных ссылок, хорошая по качеству.
RotaPost - покупка и продажа вечных ссылок, высокие цены и качество.

Войти на сайт:
[ Авторизация ] [ Регистрация ]

Последние комментарии:
123123 : Бесплатная программа - создание карты сайты xml, грабер контента
http://minecraft-cube.ru : Друганчики
Alex Leo : Друганчики
1 : Друганчики
Яндекс.Метрика