Много от вас са се чудили как да добавят времето в сайта си и ето, че сега ще разберете!
За целта трябва да имате инсталиран Apache сървър и PHP. След това отидете в Sinoptik.bg и изберете населено място, кликнете върху иконата RSS Абонамент /намира се в горната дясна част на сайта/, и копирайте линка. След това е време да напишем PHP скрипта. Той е състои от един файл:
<?php
$handle = fopen('
Поставете тук копираният преди малко URL адрес от Sinoptik.bg ',"r");
$text='';
while (!feof($handle)) {
$text .= fread($handle, 8192);
}
preg_match("|<item>(.*)</item>|Us",$text,$out);
preg_match("|<title>(.*)</title>|Us",$out[1],$title);
preg_match("|<description>(.*)</description>|Us",$out[1],$descr);
$descr[0] = str_replace("n",'|',str_replace(htmlspecialchars('<description><![CDATA['),'',str_replace(htmlspecialchars(']]></description>'),'',str_replace('<br />','',$descr[0]))));
$temp = explode("|",$descr[0]);
$temp2 = explode(': ',$temp[3]);
echo '<div id="wxIcon">'.str_replace(' align="left" style="margin: 10px;"','width="34" height="34"',$temp[1]).'</div><div id="wxTemp">'.$temp2[1].'</div>';
?>
С този скрипт ще се вземат само температурата и иконката. Ако искат да покажете по-подробна информация, използвайте следния скрипт:
<?php
$handle = fopen('Поставете тук копираният преди малко URL адрес от Sinoptik.bg',"r");
$text='';
while (!feof($handle)) {
$text .= fread($handle, 8192);
}
preg_match("|<item>(.*)</item>|Us",$text,$out);
preg_match("|<title>(.*)</title>|Us",$out[1],$title);
preg_match("|<description>(.*)</description>|Us",$out[1],$descr);
echo "<p style='color:#000069;'><b>".$title[1]."</b></p>";
echo str_replace("<![CDATA[","",str_replace("]]>","",$descr[1]));
?>
Така ще се покажат състоянието, температурата, колко се усеща, посоката и силата на вятъра.
Надявам, се че урокът Ви е помогнал. До скоро!
echo ''.str_replace(' align="left" style="margin: 10px;"','width="34" height="34"',$temp[1]).''.$temp2[1].'';
Каква може да е причината и как може да се оправи?
Благодаря предварително :)