Как округлить временную метку unix вверх и вниз до ближайшего получаса?

Хорошо, так что Я работаю над приложением календаря в своей системе CRM, и мне нужно найти верхнюю и нижнюю границы получаса, окружающие отметку времени, в которую кто-то ввел событие в календаре, чтобы запустить некоторый SQL в БД, чтобы определить, если у них уже есть что-то забронированное в пределах этого временного интервала.

Например, у меня есть временная метка 1330518155 = 29 февраля 2012 г. 16:22:35 GMT+4. поэтому мне нужно получить 1330516800 и 1330518600, что равно 16:00 и 16:30.

Если у кого-то есть какие-либо идеи или вы думаете, что я подхожу к разработке календаря глупым способом, дайте мне знать! Я впервые выполняю такую ​​задачу, требующую такой большой работы со временем и датами, поэтому любые советы приветствуются!

20
задан Ash 9 March 2012 в 19:09
поделиться