Была поставлена задача: сделать вывод текущей погоды на одном из сайтов. Сайтом, отдающим данные о погоде в виде формата *. 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]\" />" ## вывод прочих данных
?>

