<?php foreach ($xml -> forecast -> day as $day) { #определяем знак $sign_char_min = ''; } else {$sign_char_min = '+';} $sign_char_max = ''; } else {$sign_char_max = '+';} switch ($day -> attributes() -> hour) { case 3: $time_day = 'ночь'; break; case 9: $time_day = 'утро'; break; case 15: $time_day = 'день'; break; case 21: $time_day = 'вечер'; break; default: $time_day = 'none'; break; } #определяем напраление ветра if ($day -> wind -> rumb >= 0 && $day -> wind -> rumb < 20) { $direct_wind = 'С'; } else if ($day -> wind -> rumb >= 20 && $day -> wind -> rumb < 35) { $direct_wind = 'С, С-В'; } else if ($day -> wind -> rumb >= 35 && $day -> wind -> rumb < 55) { $direct_wind = 'С-В'; } else if ($day -> wind -> rumb >= 55 && $day -> wind -> rumb < 70) { $direct_wind = 'В, С-В'; } else if ($day -> wind -> rumb >= 70 && $day -> wind -> rumb < 110) { $direct_wind = 'В'; } else if ($day -> wind -> rumb >= 125 && $day -> wind -> rumb < 145) { $direct_wind = 'Ю-В'; } else if ($day -> wind -> rumb >= 145 && $day -> wind -> rumb < 160) { $direct_wind = 'Ю, Ю-В'; } else if ($day -> wind -> rumb >= 160 && $day -> wind -> rumb < 200) { $direct_wind = 'Ю'; } else if ($day -> wind -> rumb >= 200 && $day -> wind -> rumb < 215) { $direct_wind = 'Ю, Ю-З'; } else if ($day -> wind -> rumb >= 215 && $day -> wind -> rumb < 235) { $direct_wind = 'Ю-З'; } else if ($day -> wind -> rumb >= 235 && $day -> wind -> rumb < 250) { $direct_wind = 'З, Ю-З'; } else if ($day -> wind -> rumb >= 250 && $day -> wind -> rumb < 290) { $direct_wind = 'З'; } else if ($day -> wind -> rumb >= 290 && $day -> wind -> rumb < 305) { $direct_wind = 'З, С-З'; } else if ($day -> wind -> rumb >= 305 && $day -> wind -> rumb < 325) { $direct_wind = 'С-З'; } else if ($day -> wind -> rumb >= 325 && $day -> wind -> rumb < 340) { $direct_wind = 'С, С-З'; } else if ($day -> wind -> rumb >= 340 && $day -> wind -> rumb < 360) { $direct_wind = 'С'; } else {$direct_wind = 'Н';} $l = false; $flag_print = true; } $flag_print = false; } $flag_print = true; $l = true; if ($time_day != 'none') {echo '</tr></table>';} } ?> <?php if ($flag_print and $time_day != 'none') { ?> <table style="float: left; margin: 0 2px 20px 0; border: 1px solid #444;"> <tr> <td colspan="4" style="border-top: 1px solid #444; text-align: center;" title="Погода на дату"> </td> </tr> <tr> <?php } ?> <?php if ($time_day != 'none') { ?> <td style="border: 1px solid #444;"> <div style="text-align: center;"> <p style="margin: 0px; padding: 2px; border-bottom: 1px solid #444; background-color: #eaeaea;" title="Время суток"><?php echo $time_day; ?></p> <p style="margin: 0px; padding: 2px; border-bottom: 1px solid #444;"><img src="/sites/all/themes/ogaboga/clipart/<?php echo $day -> pict ?>" alt="<?php echo $day -> pict ?>" /></p> <p style="margin: 0px; padding: 2px; border-bottom: 1px solid #444;" title="Вероятность осадков"><?php echo $day -> ppcp ?>%</p> </div> </td> <?php } ?> <?php } ?> </tr></table>
выводит крякозябры.
То же самое. Просто в компоненте те же данные заносятся в базу данных, а в вашем скрипте выводятся напрямую. Минусы при вашем варианте — сайт погоды может быть не доступен, может быть медленная скорость соединения… И там, где вы выводите будет брешь. В компоненте будут браться предыдущие данные.
Если всё же нужно использовать ваш скрипт, то конвертните с utf в ansi. Файлы примера с сайта погоды идут в кодировке utf.
Если реализации нету, то сколько будет стоить реализовать парсер погоды с foreca на 3 дня и 5 дней.
Я только дизайн поменял: aksucity.info/pogodaАпну данную тему. Подскажите реализовал ли кто вывод погоды как в instantcms.ru/blogs/moi-blog-360/komponent-pogoda-v-1-0-0.html на отдельной страничке только с сайта foreca? Так как моего города допустим нету в вышеуказанном компоненте, а в foreca наиболее правдивая погода по моему городу. Заранее всем спасибо за ответ. Если реализации нету, то сколько будет стоить реализовать парсер погоды с foreca на 3 дня и 5 дней.