directman

<<< Back

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

через сервер синхронизации времени от Яндекс

Сохраню полезную ссылку сдесь:

https://yandex.ru/time/sync.json?geo=54

где geo код своего города можно узнать в модуле яндекс погоды.

В ответ прилетает json с закатом и рассветом

{"time":1565684192887,"clocks":{"54":{"id":54,"name":"Екатеринбург","offset":18000000,"offsetString":"UTC+5:00","showSunriseSunset":true,"sunrise":"05:20","sunset":"20:43","isNight":false,"skyColor":"#57bbfe","weather":{"temp":19,"icon":"bkn-d","link":"https://yandex.ru/pogoda/yekaterinburg"},"parents":[{"id":11162,"name":"Свердловская область"},{"id":225,"name":"Россия"}]}}}

который легко распарсить с помощью php

$url= 'https://yandex.ru/time/sync.json?geo=54';
$content=getURL($url, 0);  
$data=json_decode($content,true);
//$objn=$data[0]['id'];
foreach ($data as  $key=> $value)
{
 if (is_array($value))
 {

  foreach ($value as  $key1=> $value1)
  {

   if (is_array($value1)) 
       foreach ($value1 as  $key2=> $value2)  {     

        if (is_array($value2)) 
       foreach ($value2 as  $key3=> $value3)  {  

        if (is_array($value3)) 
       foreach ($value3 as  $key4=> $value4)  {  

        echo 'key4:'.$key4.'='.$value4.'<br>';   

                                              }
       else                                         echo 'key3:'.$key3.'='.$value3.'<br>';}

        echo 'key2:'.$key2.'='.$value2.'<br>';    }

       else                                         echo 'key1:'.$key1.'='.$value1.'<br>';

  }
 }
  else 

 echo 'key:'.$key.'='.$value.'<br>';

}

Может есть вариант разбора без циклов, но и этот работает. Если кто подскажет, как проверить все вложенные массивы, буду признателен.

В результате разбора получим такие данные:

key:time=1565685512032
key2:id=54
key2:name=Екатеринбург
key2:offset=18000000
key2:offsetString=UTC+5:00
key2:showSunriseSunset=1
key2:sunrise=05:20
key2:sunset=20:43
key2:isNight=
key2:skyColor=#59bcfd
key3:temp=19
key3:icon=bkn-d
key3:link=https://yandex.ru/pogoda/yekaterinburg
key2:weather=Array
key4:id=11162
key4:name=Свердловская область
key4:id=225
key4:name=Россия
key2:parents=Array

Discuss (0) (3)

See also:
2019-08-16 Регулирование радиаторов отопления
2019-08-18 Собираем голосовой помощник на базе WM8960 Audio HAT и raspberry pi zero w
2019-07-24 Самый дешевый вариант видеонаблюдения
2019-07-22 Запуск MajorDroid на одноплатниках, старых планшетах, телефонах.
2019-07-22 Запуск Majordroid на старом железе
2019-07-15 Устанавливаем opencv и необходимые библиотеки на ubuntu 18.04 без использования python
2019-07-05 Решение проблемы Incorrect integer value: '' for column 'ID' at row 1
2019-07-04 О приборах учета и удаленном снятии показаний (вода и газ)
2019-07-04 О приборах учета и удаленном снятии показаний (электричество)
2019-07-03 Конвертируем rs-485 в TCP-IP
2019-06-24 Наблюдение за радиационной обстановкой в регионе
2019-06-06 Меню пылесоса Xiaomi в телеграмм
2019-06-06 Удобный просмотр данных сенсоров через телеграмм
2019-06-06 Просмотр камер через телеграмм
2019-06-06 Управление светом через телеграмм
2019-06-06 Колор-пикер для телеграм
2019-05-06 Список символов emoji
2019-04-17 Установка z-way на Ubuntu
2019-04-16 Решение проблемы ERROR 1040 (HY000): Too many connections
2018-09-09 Список домофонов с IP интерфейсом
2018-08-29 Список кондиционеров с wifi
2018-08-29 Список доступных к покупке IP колонок
2018-07-15 Интеграция датчика Mi flora plant к системе УД MAJORDOMO
2018-06-13 Полезные команды для работы с git
2018-05-27 преобразование html страниц в картинку и отправка в телеграмм
2018-05-24 Полезные sql запросы
2018-05-23 Создание образа nand памяти orange pi plus2
2018-05-16 Команды для работы с базой данных напрямую
2018-04-13 Индикаторы о заряде батареек без использования картинок
2018-04-06 Установка и настройка python на windows для работы систем распознавания
2018-04-05 Распознавание лиц подходящих к двери людей с помощью ip камеры и открытие двери, если нейросеть признала своего
2018-04-04 Управление таймерами выключения света
2018-04-04 Управление RGB контроллером на базе ESP8266
2018-04-03 Увеличение разрешения китайских камер на чипе hi3516c H264
2018-03-13 Использование колонки google home в качестве терминала Majordomo
2018-03-13 Установка и подключение rtl usb донгла для чтения датчиков температуры и кнопок 433 мгц
2018-03-13 Настройка брокера MQTT
2018-02-17 Проект "умная входная дверь"
2018-02-11 Отправка всех значений свойства объекта в телеграм
2017-12-21 получение адреса по GPS координатам
2017-12-21 получение / передача GPS координат сервису livegps.com
2017-12-21 чтение мгновенных данных U,P, I электросчетчика милур 104
2017-12-21 Получение координат с маяков и gsm сигнализаций starline-online.ru

Екатеринбург, Россия

На форуме: directman66