Не нравятся результаты поиска? Попробуйте другой поиск!
DLE FAQ » Все вопросы » Хаки » Как вывести число из информера погоды?

Как вывести число из информера погоды?


     09.11.2014    Все вопросы » Хаки    2397

вопрос
Хочу сделать информер на сайте, который будет состоять из 1 числа- температуры воздуха в определённом городе. Помогите реализовать данную идею. Необязательно чтобы вывод погоды обновлялся постоянно, хотя бы днём и ночью.

Ответил: ravchik


weather.php, закинуть в папку engine/modules
<?php

if(!defined('DATALIFEENGINE')) {die("Hacking attempt!");}
$meteo = dle_cache('meteo', $config['skin']); // смотрим в кэше, если есть - берем
if(!$meteo){
    $data_file = "http://export.yandex.ru/weather-ng/forecasts/".$city.".xml"; // Берем прогноз у Яндекса
    $xml = simplexml_load_file($data_file); // обрабатывае xml файл simple_xml'ом
    $temp = $xml->fact->temperature; // получаем текущую температуру
    if ($temp>0) $temp='+'.$temp; // если выше нуля, добавляем +
    foreach ( $xml->informer->temperature as $ttemp ) { // температура на завтра
        if ($ttemp>0) $ttemp='+'.$ttemp; // если выше нуля, добавляем +
    }
    $meteo = "Сейчас {$temp} <sup>o</sup>C<br>Завтра {$ttemp} <sup>o</sup>C"; // формируем отображение погоды
    create_cache('meteo', $meteo, $config['skin']); // кэшируем это дело
}
echo $meteo;
в нужном месте добавить
{include file="engine/modules/meteo.php?city=28722"}
28722 в данном примере - Уфа, можно узнать по адресу http://weather.yandex.ru/static/cities.xml

2 комментария

ravchik
Юзер

ravchik - 10 ноября 2014 11:35 -

В ответе
weather.php, закинуть в папку engine/modules
следует читать как
meteo.php, закинуть в папку engine/modules

billing
Юзер

billing - 27 июля 2015 20:19 -

Работает мод, спасибо.
Друзья, как изображение в зависимости от погоды вывести? При попытке стянуть image-v3 выдает: Parse error: syntax error, unexpected '=' in blabla , судя по всему ругается на дефис

Чтобы комментировать - войдите или зарегистрируйтесь на сайте

Похожие вопросы

наверх