directman

<<< Назад

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

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

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

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

Обсуждение (0) (2)

Смотрите так же:
16.08.2019 Регулирование радиаторов отопления
18.08.2019 Собираем голосовой помощник на базе WM8960 Audio HAT и raspberry pi zero w
24.07.2019 Самый дешевый вариант видеонаблюдения
22.07.2019 Запуск MajorDroid на одноплатниках, старых планшетах, телефонах.
22.07.2019 Запуск Majordroid на старом железе
15.07.2019 Устанавливаем opencv и необходимые библиотеки на ubuntu 18.04 без использования python
05.07.2019 Решение проблемы Incorrect integer value: '' for column 'ID' at row 1
04.07.2019 О приборах учета и удаленном снятии показаний (вода и газ)
04.07.2019 О приборах учета и удаленном снятии показаний (электричество)
03.07.2019 Конвертируем rs-485 в TCP-IP
24.06.2019 Наблюдение за радиационной обстановкой в регионе
06.06.2019 Меню пылесоса Xiaomi в телеграмм
06.06.2019 Удобный просмотр данных сенсоров через телеграмм
06.06.2019 Просмотр камер через телеграмм
06.06.2019 Управление светом через телеграмм
06.06.2019 Колор-пикер для телеграм
06.05.2019 Список символов emoji
17.04.2019 Установка z-way на Ubuntu
16.04.2019 Решение проблемы ERROR 1040 (HY000): Too many connections
09.09.2018 Список домофонов с IP интерфейсом
29.08.2018 Список кондиционеров с wifi
29.08.2018 Список доступных к покупке IP колонок
15.07.2018 Интеграция датчика Mi flora plant к системе УД MAJORDOMO
13.06.2018 Полезные команды для работы с git
27.05.2018 преобразование html страниц в картинку и отправка в телеграмм
24.05.2018 Полезные sql запросы
23.05.2018 Создание образа nand памяти orange pi plus2
16.05.2018 Команды для работы с базой данных напрямую
13.04.2018 Индикаторы о заряде батареек без использования картинок
06.04.2018 Установка и настройка python на windows для работы систем распознавания
05.04.2018 Распознавание лиц подходящих к двери людей с помощью ip камеры и открытие двери, если нейросеть признала своего
04.04.2018 Управление таймерами выключения света
04.04.2018 Управление RGB контроллером на базе ESP8266
03.04.2018 Увеличение разрешения китайских камер на чипе hi3516c H264
13.03.2018 Использование колонки google home в качестве терминала Majordomo
13.03.2018 Установка и подключение rtl usb донгла для чтения датчиков температуры и кнопок 433 мгц
13.03.2018 Настройка брокера MQTT
17.02.2018 Проект "умная входная дверь"
11.02.2018 Отправка всех значений свойства объекта в телеграм
21.12.2017 получение адреса по GPS координатам
21.12.2017 получение / передача GPS координат сервису livegps.com
21.12.2017 чтение мгновенных данных U,P, I электросчетчика милур 104
21.12.2017 Получение координат с маяков и gsm сигнализаций starline-online.ru

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

На форуме: directman66