Использование системы в различных ситуациях, вопросы программирования сценариев.
Модератор: immortal
dioxin
Сообщения: 175 Зарегистрирован: Вт фев 14, 2017 4:43 pm
Откуда: Иваново
Сообщение
dioxin » Вс май 28, 2017 4:38 pm
Вот самый простой способ получения заката-рассвета по координатам места:
Код: Выделить всё
$sunrise = date_sunrise(time(), SUNFUNCS_RET_STRING, 57.000000, 41.000000, 90+50/60, 3);
$sunset = date_sunset(time(), SUNFUNCS_RET_STRING, 57.000000, 41.000000, 90+50/60, 3);
setGlobal ('ThisComputer.SunSetTime',$sunset);
setGlobal ('ThisComputer.SunRiseTime',$sunrise);
mmalyshkin
Сообщения: 18 Зарегистрирован: Чт мар 16, 2017 12:53 am
Сообщение
mmalyshkin » Пн май 29, 2017 8:32 pm
Решил проблему как автор. (парсится содержимое страницы)
Зашел на сайт,
http://pogoda.by/ , нашел город Россия, Иваново. Ссылка получилась:
http://pogoda.by/27347 , поставил в настройках. И время подкорректировалось. Правда все равно подвирает минут на 5. Но причина думаю скрывается в координатах самого города, занесенных на сайте.
dioxin
Сообщения: 175 Зарегистрирован: Вт фев 14, 2017 4:43 pm
Откуда: Иваново
Сообщение
dioxin » Вт май 30, 2017 6:24 am
Не надо ничего парсить, используйте этот код. Только из веб-переменных уберите парсинг sunrise и sunset.
Код: Выделить всё
$sunrise = date_sunrise(time(), SUNFUNCS_RET_STRING, 57.000000, 41.000000, 90+50/60, 3);
$sunset = date_sunset(time(), SUNFUNCS_RET_STRING, 57.000000, 41.000000, 90+50/60, 3);
setGlobal ('ThisComputer.SunSetTime',$sunset);
setGlobal ('ThisComputer.SunRiseTime',$sunrise);
А Вы тоже из Иваново?
Последний раз редактировалось
dioxin Вт май 30, 2017 7:46 am, всего редактировалось 1 раз.
nick7zmail
Сообщения: 7573 Зарегистрирован: Пн окт 28, 2013 8:14 am
Откуда: Екатеринбург
Сообщение
nick7zmail » Вт май 30, 2017 7:01 am
Вообще, в модуле openweather есть этот функционал...если пользуетесь им - координаты можно подкорректировать в свойствах ow_city.lat и ow_city.lon. Перепишет он только если заново выбрать город.
mmalyshkin
Сообщения: 18 Зарегистрирован: Чт мар 16, 2017 12:53 am
Сообщение
mmalyshkin » Вт май 30, 2017 1:14 pm
dioxin писал(а): Не надо ничего парсить, используйте этот код. Только из веб-переменных уберите парсинг sunrise и sunset.
Код: Выделить всё
$sunrise = date_sunrise(time(), SUNFUNCS_RET_STRING, 57.000000, 41.000000, 90+50/60, 3);
$sunset = date_sunset(time(), SUNFUNCS_RET_STRING, 57.000000, 41.000000, 90+50/60, 3);
setGlobal ('ThisComputer.SunSetTime',$sunset);
setGlobal ('ThisComputer.SunRiseTime',$sunrise);
А Вы тоже из Иваново?
Да. Только начал разбираться.