Wetterbericht Tirol
Österreichischer Wetterbericht für Tirol und inneralpine Lagen.
function stp_awp_summary_add_unique(&$parts, $text){ $text = trim((string)$text); if ($text === '') return; if (!in_array($text, $parts, true)) $parts[] = $text; } function stp_awp_build_v2_summary_parts($canonical){ $parts = array(); if (!is_array($canonical) || empty($canonical)) return $parts; if (isset($canonical['snow_cm_24h']) && is_numeric($canonical['snow_cm_24h'])) { $snow = (float)$canonical['snow_cm_24h']; if ($snow >= 15) stp_awp_summary_add_unique($parts, round($snow, 1) . ' cm Schnee / 24h'); elseif ($snow >= 3) stp_awp_summary_add_unique($parts, 'etwas Neuschnee'); } if (!empty($canonical['snowline_v2']) && is_array($canonical['snowline_v2'])) { $sv2 = $canonical['snowline_v2']; if (isset($sv2['value_m']) && is_numeric($sv2['value_m'])) { stp_awp_summary_add_unique($parts, 'Schneefallgrenze ' . round((float)$sv2['value_m']) . ' m'); } if (!empty($sv2['trend'])) { $map = array('falling' => 'Schneefallgrenze sinkt', 'rising' => 'Schneefallgrenze steigt', 'steady' => 'Schneefallgrenze stabil'); if (isset($map[$sv2['trend']])) stp_awp_summary_add_unique($parts, $map[$sv2['trend']]); } } elseif (isset($canonical['snowline_m']) && is_numeric($canonical['snowline_m'])) { stp_awp_summary_add_unique($parts, 'Schneefallgrenze ' . round((float)$canonical['snowline_m']) . ' m'); } if (!empty($canonical['atmosphere_v2']['freezing_level_v2']['value_m']) && is_numeric($canonical['atmosphere_v2']['freezing_level_v2']['value_m'])) { stp_awp_summary_add_unique($parts, 'Nullgradgrenze ' . round((float)$canonical['atmosphere_v2']['freezing_level_v2']['value_m']) . ' m'); } elseif (isset($canonical['freezing_level_m']) && is_numeric($canonical['freezing_level_m'])) { stp_awp_summary_add_unique($parts, 'Nullgradgrenze ' . round((float)$canonical['freezing_level_m']) . ' m'); } if (!empty($canonical['wind_v2']) && is_array($canonical['wind_v2'])) { $w = $canonical['wind_v2']; if (!empty($w['storm_signal'])) { $risk = isset($w['storm_risk']) ? (string)$w['storm_risk'] : 'hoch'; stp_awp_summary_add_unique($parts, 'stürmisch (' . $risk . ')'); } elseif (isset($w['wind_now_kmh']) && is_numeric($w['wind_now_kmh']) && (float)$w['wind_now_kmh'] >= 25) { stp_awp_summary_add_unique($parts, 'windig'); } if (!empty($w['bise_signal'])) stp_awp_summary_add_unique($parts, 'Bise möglich'); if (!empty($w['foehn_signal'])) stp_awp_summary_add_unique($parts, 'Föhnsignal'); } if (!empty($canonical['atmosphere_v2']['convective_v2']) && is_array($canonical['atmosphere_v2']['convective_v2'])) { $cv2 = $canonical['atmosphere_v2']['convective_v2']; if (!empty($cv2['lightning_watch'])) stp_awp_summary_add_unique($parts, 'Gewitterrisiko'); if (!empty($cv2['hail_risk']) && in_array((string)$cv2['hail_risk'], array('medium','high'), true)) stp_awp_summary_add_unique($parts, 'Hagel möglich'); if (!empty($cv2['winter_thunder_possible'])) stp_awp_summary_add_unique($parts, 'Wintergewitter möglich'); } if (!empty($canonical['icing_v2']) && is_array($canonical['icing_v2'])) { $ice = $canonical['icing_v2']; if (!empty($ice['blitzeis_risk']) && (string)$ice['blitzeis_risk'] === 'very_high') { stp_awp_summary_add_unique($parts, 'Blitzeisgefahr'); } elseif (!empty($ice['glatteis_risk']) && in_array((string)$ice['glatteis_risk'], array('high','very_high'), true)) { stp_awp_summary_add_unique($parts, 'Glatteisgefahr'); } elseif (!empty($ice['frost_signal'])) { stp_awp_summary_add_unique($parts, 'Frost möglich'); } if (!empty($ice['freezing_rain_risk']) && (string)$ice['freezing_rain_risk'] === 'high') stp_awp_summary_add_unique($parts, 'gefrierender Regen möglich'); } if (!empty($canonical['operational_flags_v2']) && is_array($canonical['operational_flags_v2'])) { $ops = $canonical['operational_flags_v2']; if (!empty($ops['rain_to_snow_transition'])) stp_awp_summary_add_unique($parts, 'Übergang von Regen zu Schnee'); if (!empty($ops['stau_active'])) stp_awp_summary_add_unique($parts, 'Staulage aktiv'); } return $parts; } function stp_awp_build_summary_line_v2($condition, $temp, $wind, $canonical){ $parts = array(); $condition = trim((string)$condition); if ($condition !== '') $parts[] = $condition; if ($temp !== null && $temp !== '') $parts[] = round((float)$temp) . '°C'; if ($wind !== null && $wind !== '') $parts[] = 'Wind ' . round((float)$wind) . ' km/h'; $v2parts = stp_awp_build_v2_summary_parts($canonical); foreach ($v2parts as $item){ stp_awp_summary_add_unique($parts, $item); } return trim(implode(' · ', $parts)); }
Österreichischer Wetterbericht für Tirol und inneralpine Lagen.