За последние 24 часа нас посетили 30609 программистов и 1801 робот. Сейчас ищут 936 программистов ...

Проблема с работой с датами до 1970 г.

Тема в разделе "Прочие вопросы по PHP", создана пользователем unfrankness, 17 май 2006.

  1. unfrankness

    unfrankness Активный пользователь

    С нами с:
    17 май 2006
    Сообщения:
    18
    Симпатии:
    0
    Адрес:
    Санкт-Петербург
    в идеале нужен РНР-скрипт для определения именинников. Догадываюсь, что рациональнее весь запрос непосредственно в SQL написать, но с ним туго. А в РНР вот такая заморочка с датами...
     
  2. unfrankness

    unfrankness Активный пользователь

    С нами с:
    17 май 2006
    Сообщения:
    18
    Симпатии:
    0
    Адрес:
    Санкт-Петербург
    vasa_c:
    а получится сравнить годы до 1970?
     
  3. vasa_c

    vasa_c Активный пользователь

    С нами с:
    22 мар 2006
    Сообщения:
    1.760
    Симпатии:
    0
    Адрес:
    гор.Ленинград
    Код (Text):
    1. ...where (date>="2006-05-23")and(date<="2006-05-29")
    А какие проблемы?
     
  4. unfrankness

    unfrankness Активный пользователь

    С нами с:
    17 май 2006
    Сообщения:
    18
    Симпатии:
    0
    Адрес:
    Санкт-Петербург
    vasa_c:
    ну конечно получится. Это, впринципе, один из вариантов, только кажется не очень рациональный...
     
  5. unfrankness

    unfrankness Активный пользователь

    С нами с:
    17 май 2006
    Сообщения:
    18
    Симпатии:
    0
    Адрес:
    Санкт-Петербург
    Всем большое спасибо за советы. Попробую поработать с имеющейся информацией. Посмотрим, что получится...
     
  6. unfrankness

    unfrankness Активный пользователь

    С нами с:
    17 май 2006
    Сообщения:
    18
    Симпатии:
    0
    Адрес:
    Санкт-Петербург
    Снова я. Новый проблем с датами...
    А как сравнить две даты между собой (обе представлены в формате YYYY-MM-DD)? Если просто через оператор сравнения, то сравниваются только года, без месяца и дня...
    И как сложить (вычесть) даты? Та же фигня: только первая цифра представления даты участвует в операциях сложения/вычитания...
     
  7. Belegnar

    Belegnar Активный пользователь

    С нами с:
    11 фев 2006
    Сообщения:
    299
    Симпатии:
    0
    Написать свою функцию. Или почитать доку по мисклю. :)
     
  8. vasa_c

    vasa_c Активный пользователь

    С нами с:
    22 мар 2006
    Сообщения:
    1.760
    Симпатии:
    0
    Адрес:
    гор.Ленинград
    unfrankness, в SQL сравнивается все.
    Если в PHP, то разбить строку на составляющие
    http://www.php.net/explode
    и сравнивать их по порядку.
     
  9. unfrankness

    unfrankness Активный пользователь

    С нами с:
    17 май 2006
    Сообщения:
    18
    Симпатии:
    0
    Адрес:
    Санкт-Петербург
    Belegnar:
    Уже не в первый раз слышу, что надо написать свою функцию... А как же утверждения разработчиков о том, что в РНР СТОЛЬКО функций, что хватит на все случаи жизни?

    Vasa_c:
    Я так и делаю, разбиваю и сравниваю (кстати, это, наверное, и можно назвать своего рода функцией). Значит, нормального "неразбивательного" способа нет? Жаль :(

    Большое всем спасибо. До новых вопросов :)
     
  10. Belegnar

    Belegnar Активный пользователь

    С нами с:
    11 фев 2006
    Сообщения:
    299
    Симпатии:
    0
    Написать свою функцию. Или почитать доку по мисклю.
    Обрати внимание на выделеный текст. РНР в твоем вопросе вообще не при чем.
     
  11. vasa_c

    vasa_c Активный пользователь

    С нами с:
    22 мар 2006
    Сообщения:
    1.760
    Симпатии:
    0
    Адрес:
    гор.Ленинград
    Чем он не нормальный? Что подразумевается под нормальным? Встроенная в PHP функция?
    Почему люди любят использовать уже готовое, хотя оно абсолютно не факт, что лучшее? Чем сделать свое плохо?
     
  12. unfrankness

    unfrankness Активный пользователь

    С нами с:
    17 май 2006
    Сообщения:
    18
    Симпатии:
    0
    Адрес:
    Санкт-Петербург
    Обращаю внимание на текст. Функцию-то на РНР писать или на Майскуэле? :) Я не пойму, что-то с настройками Майскуэля не так что ли?

    Я не спорю, иногда хендмейд намного лучше. Просто работа с датами (сравнение, сложение и т.д.) настолько часто встречаемый вопрос, что не иметь в РНР для этого готовой функции со стороны разработчиков по меньшей мере нелогично... Хотя, может быть, я зря гоню на разработчиков...
     
  13. Kortez

    Kortez Активный пользователь

    С нами с:
    16 окт 2006
    Сообщения:
    33
    Симпатии:
    0
    На самом деле период Григорианского календаря не 56, а 400 лет.
    _http://www.astronet.ru/db/msg/1182321/node4.html