Модераторы: skyboy, MoLeX, Aliance, ksnk

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> пройденный срок, выполнение запроса через n-ое кол-во дне 
:(
    Опции темы
CyClon
Дата 13.2.2008, 12:02 (ссылка)  | (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 838
Регистрация: 3.12.2005

Репутация: 3
Всего: 4



Цитата
1) Тем, что unix_time выглядит как число и не читаем.
2) Метка времени строится относительно смещения GMT - серверы в разных часовых поясах покажут разное время и потому при неаккуратном обращении может быть путаница. Хотя это довольно редкий факт, у меня путаница случалась.
3) Ну и наконец тем, что timestamp не пригоден для дат в далеком прошлом и неближайшем будущем 


1) Для чего date("d.m.Y H:i:s", $time) ? Это более универсально, зная unix-time ты сможешь знать абсолютно все данные - день недели, кол-во секунд, месяц прописью и т.д. datetime придется конвертировать.
2) Проблем никогда не было. Да и вообще это не проблема, если голова на плечах есть - такие трудности преодолеваются с легкостью.
3) Извините, вы на сайте используете даты а-ля 1436 год до н.э. ? Или 208563 год? Я на 100% уверен, что даты будующего с обновлением интерпретатора PHP будут поддерживаться + ваш движок не будет использоваться в течение 50 лет.


--------------------
user posted image
PM   Вверх
flashaa
Дата 13.2.2008, 12:12 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 796
Регистрация: 7.3.2006

Репутация: 19
Всего: 25



Цитата(CyClon @  13.2.2008,  12:02 Найти цитируемый пост)
1) Для чего date("d.m.Y H:i:s", $time) ? Это более универсально, зная unix-time ты сможешь знать абсолютно все данные - день недели, кол-во секунд, месяц прописью и т.д. datetime придется конвертировать.

Вот не люблю я когда начинается перетягивание одеяла. Одно не лучше другого. У одного есть и достоинства и недостатки, так и у другого. Я просто ответил на вопрос, почему в бд не хранится таймстамп. А не утверждаю, что неудобен вообще во всем и тд и тп.
Кстати ничего не мешает мне получить метку из строкового представления даты с помощью strtotime, поиметь все возможности(и недостатки) временных меток.

Цитата(CyClon @  13.2.2008,  12:02 Найти цитируемый пост)
2) Проблем никогда не было. Да и вообще это не проблема, если голова на плечах есть - такие трудности преодолеваются с легкостью.

В бд хранится таймстамп, равный 600. Это 10 минут. На сервере в Москве date('i:S') покажет 3 часа 10 мин. На сервере в Германии 2 часа 10 мин. Это хорошо если храниться таймстапм относительно нулевого смещения. Тогда мы сможем использовать gmdate() и все будет ок. НО! Если сохранена была метка, полученная с пом. time() то значит в бд хранится локальное время. Очень интересно потом расчитывать все эти смещения временные.

Цитата(CyClon @  13.2.2008,  12:02 Найти цитируемый пост)
вы на сайте используете даты а-ля 1436 год до н.э. ?

Нет, но часто могут использоваться паспортные данные людей. А как известно людей, родившихся раньше 1970 года достаточно много сейчас.

Это сообщение отредактировал(а) flashaa - 13.2.2008, 12:14
PM MAIL   Вверх
nz1
Дата 13.2.2008, 12:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 43
Регистрация: 13.1.2008

Репутация: нет
Всего: нет



Цитата(CyClon @ 12.2.2008,  21:47)
Что заставляет людей хранить время в формате datetime? Чем unix-формат не устраивает?

Код
<?php

$current = '2001-01-01 01:01:01';
$current = strtotime($current);
$delay = 60 * 60 * 24 * 30;

if ($current + $delay < time()) {
    unlink('temp.file');
}

?>


Не проверял, но должно работать.

о да, то что нужно, спасибо!

вот так выглядит мой рабочий код:

             
Код

$result2 = $db->sql_query("SELECT sid, fid, sdate FROM ".$prefix."_getit_stat WHERE fid='$id'");
list($sid, $fid, $sdate) = $db->sql_fetchrow($result2);

$sdate = strtotime($sdate);
$delay = 60 * 60 * 24 * 30;
if ($sdate + $delay < time()) {

//удаление файла

}


остальным также спасибо smile 
PM   Вверх
flashaa
Дата 13.2.2008, 13:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 796
Регистрация: 7.3.2006

Репутация: 19
Всего: 25



Код

Не проверял, но должно работать.

Cкладывание меток - зло злейшее. Для первых шагов оно конечно годится, но для мало-мальски серьезных операций с датами - нет. Идут побоку переводы на летнее/зимнее время, февраль високосного года.
Вот так неравномерности времени были бы учтены: 
Код

strtotime('+' . gmdate('U', $delay) . ' second', $current);

PM MAIL   Вверх
GeneralElectric
Дата 13.2.2008, 13:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 797
Регистрация: 11.1.2008

Репутация: 13
Всего: 16



CyClon, ты задал вопрос. Тебе на него ответили. Развернуто и подробно.
Надо сказать "спасибо" а не отфутболивать приведенные аргументы. Сказать "а у меня проблем не было и вообще проблемы только у дураков" можно в ответ вообще на любой довод, в любой дискуссии.

И уж тем более не писать совсем откровенную чушь вида "таймстамп можно сконвертировать функцией date(), а datetime придется конвертировать".

PM MAIL   Вверх
GeneralElectric
Дата 14.2.2008, 12:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 797
Регистрация: 11.1.2008

Репутация: 13
Всего: 16



Признаю, что был груб по форме и неправ по сути в отношении автора топика. И приношу ему свои извинения.

Однако я был введен в заблуждение тем фактом, что для данного вопроса, скорее всего, был выбран неправильный раздел, и поместить его надо было в Центр помощи, если автор, по его словам, не программист, а дизайнер, и самостоятельно написать и отладить скрипт не в состоянии.

Это сообщение отредактировал(а) GeneralElectric - 14.2.2008, 12:03
PM MAIL   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0723 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.