Добро пожаловать на Pro Pawn - Портал о PAWN-скриптинге.
Показано с 1 по 4 из 4
  1. #1
    Аватар для execution
    Пользователь

    Статус
    Оффлайн
    Регистрация
    09.03.2018
    Сообщений
    255
    Репутация:
    24 ±

    Получение даты (unxitime)

    Каким образом можно получить следующую дату(unixtime), зная лишь день недели (пн, вт, ср и т.п.) и время?
    Например, имеем пн 17:00, получаем дату следующего понедельника или же unixtime
    Последний раз редактировалось execution; 27.10.2020 в 15:06.

  2. #2
    Аватар для DeimoS
    Модератор?

    Статус
    Оффлайн
    Регистрация
    27.01.2014
    Адрес
    Восточный Мордор
    Сообщений
    5,588
    Репутация:
    1984 ±
    1. SELECT UNIX_TIMESTAMP(DATE_ADD(CURDATE(), INTERVAL (6-WEEKDAY(CURDATE())+4) DAY)) AS 'day_of_next_week'


    "CURDATE()" заменяешь на дату из gettime (ибо на MySQL-сервере может стоять другой часовой пояс).

    "4" - это порядковый номер нужного дня недели, где "1" - понедельник, а "7" - воскресение
    Последний раз редактировалось DeimoS; 28.10.2020 в 08:35.
    Связаться со мной в VK можно через личные сообщения этой группы
    Заказы не принимаю

    Широко известно, что идеи стоят 0.8333 цента каждая (исходя из рыночной цены 10 центов за дюжину).
    Великих идей полно, на них нет спроса.
    Воплощение идеи в законченную игру требует долгой работы,
    таланта, терпения и креативности, не говоря уж о затратах денег, времени и ресурсов.
    Предложить идею просто, воплотить – вот в чём проблема

    Steve Pavlina

  3. Пользователь сказал cпасибо:
    execution (27.10.2020)
  4. #3
    Аватар для Pa4enka
    Пользователь

    Статус
    Оффлайн
    Регистрация
    22.04.2016
    Адрес
    Украина
    Сообщений
    157
    Репутация:
    35 ±
    Цитата Сообщение от DeimoS Посмотреть сообщение
    1. SELECT UNIX_TIMESTAMP(DATE_ADD(CURDATE(), INTERVAL (6-WEEKDAY(CURDATE())+4) DAY)) AS 'day_of_next_veek'


    "CURDATE()" заменяешь на дату из gettime (ибо на MySQL-сервере может стоять другой часовой пояс).

    "4" - это порядковый номер нужного дня недели, где "1" - понедельник, а "7" - воскресение
    veek >> week ;)

  5. #4
    Аватар для DeimoS
    Модератор?

    Статус
    Оффлайн
    Регистрация
    27.01.2014
    Адрес
    Восточный Мордор
    Сообщений
    5,588
    Репутация:
    1984 ±
    Цитата Сообщение от Pa4enka Посмотреть сообщение
    veek >> week ;)
    Спасибо. Самое забавное, что я сначала написал название в CamelCase и написал всё правильно (ибо помню как специально перечитывал и потом решил переименовать в более правильный вариант написания, уже заменив "w" на "v").



    Цитата Сообщение от execution Посмотреть сообщение
    Каким образом можно получить следующую дату(unixtime), зная лишь день недели (пн, вт, ср и т.п.) и время?
    Например, имеем пн 17:00, получаем дату следующего понедельника или же unixtime
    Ещё, к слову, можно написать функцию, создающую таблицу-календарь и уже использовать его. При частом или многократном определении следующей даты такой вариант, скорее всего, будет быстрее. К тому же, такая таблица может и в других системах пригодиться.
    Такую функцию я тебе, собственно, уже даже давал готовую. Туда только столбец с днём недели дописать осталось.
    Последний раз редактировалось DeimoS; 28.10.2020 в 13:35.
    Связаться со мной в VK можно через личные сообщения этой группы
    Заказы не принимаю

    Широко известно, что идеи стоят 0.8333 цента каждая (исходя из рыночной цены 10 центов за дюжину).
    Великих идей полно, на них нет спроса.
    Воплощение идеи в законченную игру требует долгой работы,
    таланта, терпения и креативности, не говоря уж о затратах денег, времени и ресурсов.
    Предложить идею просто, воплотить – вот в чём проблема

    Steve Pavlina

  6. Пользователь сказал cпасибо:
    execution (28.10.2020)
 

 

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •