Вывод текущей Яндекс.Погоды


Была поставлена задача: сделать вывод текущей  погоды  на одном из сайтов. Сайтом, отдающим данные о  погоде  в виде формата *. xml , был выбран  Яндекс . Погода . Файл доступен по адресу: export.yandex.ru/weather/?city=XXXXX. Где XXXXX — это ID города.

<?php
    $pogoda = file_get_contents('http://export.yandex.ru/weather/?city=ХХХХХ'); ## ХХХХХ — id города
    preg_match('/<weather_type>(.*?)<\/weather_type>/i',$pogoda,$type);
    preg_match('/<dampness>(.*?)<\/dampness>/i',$pogoda,$vlaga);
    preg_match('/<temperature>(.*?)<\/temperature>/i',$pogoda,$temp);
    preg_match('/<image2>(.*?)<\/image2>/i',$pogoda,$img2);
    preg_match('/<pressure>(.*?)<\/pressure>/i',$pogoda,$press);
    $vivod = "<img align=\"top\" src=\"$img2[1]\" alt=\"$type[1]\" />$temp[1] °C
    $type[1]<br />
    Влажность: $vlaga[1] %<br />
    Давление: $press[1] мм рт.ст.";
    echo $vivod;
?>

Поиграв с CSS, можно добиться разнообразного оформления. У меня вот так:

Вывод текущей Яндекс.Погоды

Добавлено позже:  Яндекс . Погода  теперь не отдает в файле *. xml  картинку. А показывает пустую, не загруженную дырку. Все пиктограммы  погоды  переехали на новый адрес внутри  Яндекса : img.yandex.net, а вот имена пиктограмм остались прежними. Например: weather.yandex.ru/i/n6.png — не откроется, а вот img.yandex.net/i/n6.png — откроется. Решений море. Я делаю очень тупо: взял текущий адрес картинки, отрезал часть адреса > подставил ту часть, которую надо мне > показал.

<?php
    $imgp = substr($img2[1], 24);
    $vivod = "<img align=\"top\" src=\"//img.yandex.net$imgp\" alt=\"$type[1]\" />" ## вывод прочих данных 
?>

источник

ПОЛЕЗНО  Функция массового переименования файлов в директории