MeteoRemich
facebook twitter youtube instagram
 

Wetterdaten

In dem Bereich Daten finden sie aktuelle Messungen von meinem Wettermast wieder aber auch eine Sammlung an Daten von anderen Wetterstationen in Luxemburg. Außerdem findet man Berichte die ich selbst erstellt habe.

Landesdaten

Bei den Landesdaten finden sie von 80 privaten Wetterstationen hier im Land die gemessenen Daten seit Mitternacht Sehen sie hier

Ausgewählte Stationen

    2111926199)) && (strtolower($tstamp) != "now")) { $returner = false; } else { include ($path_to_icao_db."moon.inc.php"); $starter = 0; if (strtolower($tstamp) == "now") { $starter = 445; $tstamp = mktime(); } for ($a=$starter;$a $tstamp) { $returner["next"] = $lunstamp[$a]; $returner["last"] = $lunstamp[($a-1)]; break; } } } return $returner; } function sunRiseSet($tag,$mon,$year,$breite,$northSouth,$laenge,$westEast,$timez) { $bogenbreite = pi(void)*$breite/180; if (strtolower($westEast)=="w") $laenge = -$laenge; if (strtolower($northSouth)=="s") $bogenbreite = -$bogenbreite; $daynum = juliantojd($mon,$tag,$year) - juliantojd(1,1,$year) + 1; $zeitgleichung = -0.1752*sin(0.033430*$daynum+0.5474)-0.1340*sin(0.018234*$daynum-0.1939); $deklination = 0.40954*sin(0.0172*($daynum-79.35)); if ((abs((sin(-0.0145)-sin($bogenbreite)*sin($deklination))/(cos($bogenbreite)*cos($deklination))) <= 1) && checkdate($mon, $tag, $year)) { $zeitdifferenz = 12*acos((sin(-0.0145)-sin($bogenbreite)*sin($deklination))/(cos($bogenbreite)*cos($deklination)))/pi(void); $sunRiseOrt = 12 - $zeitdifferenz - $zeitgleichung; // Ortszeit ist Sonnenzeit! $sunSetOrt = 12 + $zeitdifferenz - $zeitgleichung; $sunRiseLocal = $sunRiseOrt - $laenge/15 + $timez; // Local ist echte Lokale Zeit $sunSetLocal = $sunSetOrt - $laenge/15 + $timez; $sunRiseGMT = $sunRiseOrt - $laenge/15; // GMT Zeit $sunSetGMT = $sunSetOrt - $laenge/15; $minutesOfRiseLocal = round(($sunRiseLocal-floor($sunRiseLocal))*60); $minutesOfSetLocal = round(($sunSetLocal-floor($sunSetLocal))*60); $minutesOfRiseGMT = round(($sunRiseGMT-floor($sunRiseGMT))*60); $minutesOfSetGMT = round(($sunSetGMT-floor($sunSetGMT))*60); $returner["risestamp"] = gmmktime(floor($sunRiseGMT),$minutesOfRiseGMT,0,$mon,$tag,$year); $returner["setstamp"] = gmmktime(floor($sunSetGMT), $minutesOfSetGMT, 0,$mon,$tag,$year); if ($minutesOfRiseLocal<10) $minutesOfRiseLocal = "0" . $minutesOfRiseLocal; if ($minutesOfSetLocal<10) $minutesOfSetLocal = "0" . $minutesOfSetLocal; $returner["sunrise"] = floor($sunRiseLocal) . ":" . $minutesOfRiseLocal; $returner["sunset"] = floor($sunSetLocal) . ":" . $minutesOfSetLocal; } else { $returner = false; } return $returner; } function getIcaoTimeZone($ICAO) { if ($stationInfo = getStationInfo($ICAO)) { $gmttime = 1*$stationInfo["gmttime"]; $returner = getTimeZone($gmttime); } else { $returner = false; } return $returner; } function getTimeZone($gmtRelatedTimezone) { $gmtRelatedTimezone = 1*$gmtRelatedTimezone; $gmtRelatedTimezone = str_replace(".",",",$gmtRelatedTimezone); $timeZone["12"] = "NZST; New Zealand Standard Time"; $timeZone["11,5"] = "NFT; Norfolk (Island) Standard Time"; $timeZone["11"] = "SBT; Solomon Islands Standard Time"; $timeZone["10"] = "AEST; Australian Eastern Standard Time"; $timeZone["9,5"] = "ACST; Australian Central Standard Time"; $timeZone["9"] = "JST; Japan Standard Time"; $timeZone["8"] = "AWST; Australian Western Standart Time; "; $timeZone["7"] = "ICT; Indochina Standard Time"; $timeZone["6,5"] = "MMT; Myanmar Standard Time"; $timeZone["6"] = "LKT; (Sri) Lanka Standard Time"; $timeZone["5,75"] = "NTZ; Nepal Standard Time Zone"; $timeZone["5,5"] = "IST; Indian Standard Time"; $timeZone["5"] = "IOT; British Indian Ocean Territory Standard Time"; $timeZone["4,5"] = "AFT; Afghanistan Standard Time"; $timeZone["4"] = "UAE; United Arab Emirates Standard Time"; $timeZone["3,5"] = "MET; Teheran Standard Time"; $timeZone["3"] = "MSK; Moscow Standard Time"; $timeZone["2"] = "EET; Eastern Europe Standard Time"; $timeZone["1"] = "CET; Central European Standard Time"; $timeZone["0"] = "GMT; Greenwich Mean Time"; $timeZone["-1"] = "ATZ; Azores Standard Time"; $timeZone["-2"] = "VTZ; Greenland Eastern Standard Time"; $timeZone["-3"] = "EBT; Eastern Brazilian Standard Time"; $timeZone["-3,5"] = "NST; Newfoundland Standard Time"; $timeZone["-4"] = "AST; Atlantic Standart Time"; $timeZone["-5"] = "EST; Eastern Standard Time"; $timeZone["-6"] = "CST; Central Standard Time"; $timeZone["-7"] = "MST; Mountain Standart Time"; $timeZone["-8"] = "PST; Pacific Standart Time"; $timeZone["-9"] = "AKST; Alaska Standart Time"; $timeZone["-9,5"] = "?; Îles Marquises Standard Time"; $timeZone["-10"] = "HST; Hawaiian Standart Time"; $timeZone["-11"] = "SST; Samoa Standart Time"; $returner = $timeZone[$gmtRelatedTimezone]; if ($returner == "") $returner = false; return $returner; } function readCountrys() { global $path_to_icao_db; include ($path_to_icao_db."countries.inc.php"); return $country; } function numberPrefix($item) { $item = round(10*($item/10-floor($item/10))); if ($item == 1) { $returner = "st"; } else if ($item == 2) { $returner = "nd"; } else if ($item == 3) { $returner = "rd"; } else { $returner = "th"; } return $returner; } function clearTAF($tafcode) { $tafcode=rawurldecode($tafcode); $tafcode=str_replace("\r"," ",$tafcode); $tafcode=str_replace("\n"," ",$tafcode); $tafcode=str_replace("=","",$tafcode); $tafcode=str_replace("BECMG"," BECMG ",$tafcode); $tafcode=str_replace("TEMPO"," TEMPO ",$tafcode); $tafcode=str_replace("PROB"," PROB",$tafcode); $tafcode=str_replace("NSW"," NSW ",$tafcode); $tafcode=str_replace("CAVOK"," CAVOK ",$tafcode); $tafcode=str_replace("NOSIG"," NOSIG ",$tafcode); $tafcode=str_replace("NSC"," NSC ",$tafcode); $tafcode=str_replace("KT","KT ",$tafcode); $tafcode=str_replace("MPS","MPS ",$tafcode); $tafcode=str_replace("KMH","KMH ",$tafcode); $tafcode=str_replace("SKC"," SKC",$tafcode); $tafcode=str_replace("CLR"," CLR",$tafcode); $tafcode=str_replace("FEW"," FEW",$tafcode); $tafcode=str_replace("SCT"," SCT",$tafcode); $tafcode=str_replace("BKN"," BKN",$tafcode); $tafcode=str_replace("OVC"," OVC",$tafcode); $tafcode=str_replace("TAF"," TAF ",$tafcode); $tafcode=str_replace("METAR"," METAR ",$tafcode); $tafcode=str_replace("RTD"," RTD",$tafcode); $tafcode=str_replace("VRB"," VRB",$tafcode); $tafcode=str_replace("CB ","CB ",$tafcode); $tafcode=str_replace("TCU","TCU ",$tafcode); $tafcode=str_replace("Q"," Q",$tafcode); $tafcode=str_replace("QNH"," QNH",$tafcode); $tafcode=str_replace("WS"," WS ",$tafcode); $tafcode=str_replace("LDG"," LDG ",$tafcode); $tafcode=str_replace("RWY"," RWY",$tafcode); $tafcode=str_replace("TKOF"," TKOF ",$tafcode); $tafcode=str_replace("VV"," VV",$tafcode); $tafcode=str_replace("+"," +",$tafcode); $tafcode=str_replace("-"," -",$tafcode); $ktpos=0; while ($ktpos=strpos("$tafcode ","KT",($ktpos+2))) { if (substr($tafcode,($ktpos-3),1)=="G") { $tafcode = substr($tafcode,0,($ktpos-8)) . " " . substr($tafcode,($ktpos-8)); } else { $tafcode = substr($tafcode,0,($ktpos-5)) . " " . substr($tafcode,($ktpos-5)); } } $tafcode=trim($tafcode); while (strpos($tafcode," ")) { $tafcode=str_replace(" "," ",$tafcode); } $tafItemArray=explode(" ",$tafcode); for ($a=0;$a 12) { $aktualhour-=12; $ampm="PM"; } $returner = "this month´s " . (1*substr($tafItemArray[$a],0,2)) . numberPrefix(substr($tafItemArray[$a],0,2)) . ", "; $returner.= $aktualhour . ":" . substr($tafItemArray[$a],4,2) . " $ampm GMT"; } else { $returner = (1*substr($tafItemArray[$a],0,2)) . ". dieses Monats, "; $returner.= substr($tafItemArray[$a],2,2) . ":" . substr($tafItemArray[$a],4,2) . " GMT"; } break; } } if (isset($returner)) { return $returner; } else { return false; } } function getValidTime($tafcode,$lang) { $tafItemArray=clearTAF($tafcode); for ($a=0;$a 12) { $fromHour-=12; $ampmFrom="PM"; } if ($toHour > 12) { $toHour-=12; $ampmTo="PM"; } $returner = "this month´s " . (1*substr($tafItemArray[$a],0,2)) . numberPrefix(substr($tafItemArray[$a],0,2)) . ", "; $returner.= "$fromHour:00 $ampmFrom to $toHour:00 $ampmTo GMT $toNextDay"; } else { $toNextDay = str_replace("next day", "nächster Tag", $toNextDay); $returner = (1*substr($tafItemArray[$a],0,2)) . ". dieses Monats "; $returner.= "$fromHour:00 bis $toHour:00 GMT $toNextDay"; } break; } } if (isset($returner)) { return $returner; } else { return false; } } function getShortValidTime($tafcode,$lang) { $tafItemArray=clearTAF($tafcode); for ($a=0;$a 12) { $fromHour-=12; $ampmFrom="PM"; } if ($toHour > 12) { $toHour-=12; $ampmTo="PM"; } $returner.= "$fromHour:00 $ampmFrom to $toHour:00 $ampmTo GMT $toNextDay"; } else { $toNextDay = str_replace("next day", "nächster Tag", $toNextDay); $returner.= "$fromHour:00 bis $toHour:00 GMT $toNextDay"; } break; } } if (isset($returner)) { return $returner; } else { return false; } } function getFmTime($tafcode, $lang) { $tafItemArray=clearTAF($tafcode); for ($a=0;$a 12) { $hour-=12; $ampm="PM"; } $returner.= "$hour:$minutes $ampm GMT"; } else { $returner.= "$hour:$minutes GMT"; } break; } } if (isset($returner)) { return $returner; } else { return false; } } function windBeaufort($item) { $beaufort[]=0; $beaufort[]=1; $beaufort[]=4; $beaufort[]=7; $beaufort[]=11; $beaufort[]=16; $beaufort[]=22; $beaufort[]=28; $beaufort[]=34; $beaufort[]=41; $beaufort[]=48; $beaufort[]=56; $beaufort[]=64; for ($a=0;$a<=12;$a++) { if ($item >= $beaufort[$a]) $windbeauf=$a; } return $windbeauf; } function windRose($item) { $winddir[]="N"; $winddir[]="NNE"; $winddir[]="NE"; $winddir[]="ENE"; $winddir[]="E"; $winddir[]="ESE"; $winddir[]="SE"; $winddir[]="SSE"; $winddir[]="S"; $winddir[]="SSW"; $winddir[]="SW"; $winddir[]="WSW"; $winddir[]="W"; $winddir[]="WNW"; $winddir[]="NW"; $winddir[]="NNW"; $winddir[]="N"; return $winddir[round($item*16/360)]; } function getWind($tafcode) { $tafItemArray=clearTAF($tafcode); for ($a=0;$a0) && ($dewpoint>0)) { $ssdTemp=pow(10,((7.5*$temperature)/(237.3+$temperature))); $ssdDew=pow(10,((7.5*$dewpoint)/(237.3+$dewpoint))); return round(100*$ssdDew/$ssdTemp); } else { return false; } } else { return false; } } function getTafTemp($tafcode,$lang) { $tafItemArray=clearTAF($tafcode); for ($a=0;$a 12) { $returner["time"] -= 12; $ampm="PM"; } $returner["time"] .= ":00 $ampm"; } else { $returner["time"] .= ":00"; } $returner["time"] .= " GMT"; break; } } if (isset($returner)) { return $returner; } else { return false; } } function getPressure($tafcode) { $tafItemArray=clearTAF($tafcode); for ($a=0;$a $localDay) { $now += (24*3600); // noch von gestern! } if ($now < ($rise-3600)) { $pre="night"; } else if ($now < ($rise+3600)) { $pre="dawn"; } else if ($now < ($set-3600)) { $pre="day"; } else if ($now < ($set+3600)) { $pre="dawn"; } else { $pre="night"; } } else { $pre="day"; } if ($pic=="?") { $graficfile = "fragezeichen.jpg"; } else { $graficfile = $pre . "_" . $pic . ".jpg"; if (strpos($graficfile,"thunderstorm")) $graficfile = str_replace(".jpg",".gif",$graficfile); } return $graficfile; } function getSky($tafcode,$lang) { $cloudlayer = 0; $upToNowSky = 0; while ($clouds = getClouds ($tafcode, $cloudlayer++, $lang)) { if ($clouds["cov1"] > $upToNowSky) { $upToNowSky = $clouds["cov1"]; if (($clouds["cumulus"] == "yes") && ($cumulus != " towering cumulus clouds observed")) { $cumulus = " with cumulus clouds"; } if ($clouds["cumulus"] == "towering") $cumulus = " towering cumulus clouds observed"; } $moreclouds = "yes"; } switch ($upToNowSky) { case "0": $returner = "sky clear"; break; case "1": $returner = "few clouds"; break; case "3": $returner = "partly cloudy"; break; case "5": $returner = "mostly cloudy"; break; case "8": $returner = "sky overcast"; break; case "9": $returner = "no significant clouds below 5,000 ft"; break; } if ($moreclouds == "yes") { $returner = "$returner$cumulus"; } else { $returner = false; } if (($lang == "DE") || ($lang == "de")) { $returner = str_replace("no significant clouds below 5,000 ft","keine wesentliche Bewölkung unter 1.500 Meter",$returner); $returner = str_replace("sky clear","wolkenlos",$returner); $returner = str_replace("few clouds","leichte Bewölkung",$returner); $returner = str_replace("partly cloudy","teilweise bewölkt",$returner); $returner = str_replace("mostly cloudy","überwiegend bewölkt",$returner); $returner = str_replace("sky overcast","bedeckter Himmel",$returner); $returner = str_replace("towering cumulus clouds observed","Gewitterwolken beobachtet",$returner); $returner = str_replace("with cumulus clouds","mit Cumulus Wolken",$returner); $returner = str_replace("not reported","k/A",$returner); } return $returner; } function getClouds($tafcode,$number,$lang) { $lang=strtolower($lang); $tafItemArray=clearTAF($tafcode); $aktualCloudBase = 0; for ($a=0;$a
    "; } $returner .= "Actual weather "; if ($issuetime = getIssueTime ($metarParts[$a], $lang)) { $returner .= "from $issuetime"; } $returner .= ":
    \n"; break; case "becmg": $returner .= "2 hours trend:\n"; break; case "tempo": $returner .= "2 hours trend: temporarily\n"; break; case "nosig": $returner .= "2 hours trend: no changes
    \n"; break; } if ($wind = getWind($metarParts[$a])) { if ($wind["dir"]=="variable") { $returner .= "Wind direction changing "; } else { $returner .= "Winds from ".$wind["dir"]." (".$wind["deg"]."°) "; } $returner .= "force ".$wind["wbf"]." beaufort ("; $returner .= $wind["wkt"]." knots)"; if ($wind["gkt"] > $wind["wkt"]) { $returner .= " with gusts up to ".$wind["gbf"]; $returner .= " beaufort (".$wind["gkt"]." knots)"; } $returner .= ",\n"; } if ($temp = getMetarTemp($metarParts[$a])) { $returner .= "Temperature: $temp°C,\n"; } if ($dew = getMetarDewpoint($metarParts[$a])) { $returner .= "Dewpoint: $dew°C,\n"; } if ($hum = getMetarHumidity($metarParts[$a])) { $returner .= "Humidity: $hum %,\n"; } if ($press = getPressure($metarParts[$a])) { $returner .= "Air pressure: $press hPa,\n"; } if ($vis = getVisibility($metarParts[$a])) { $returner .= "Visibility: "; if ($vis == 9999) { $returner .= "more than 10 km,\n"; } else if ($vis == 8888) { $returner .= "more than 10 km, no clouds below 5000 ft, no precipitation\n"; } else if ($vis < 10000) { $returner .= "$vis meters,\n"; } else if ($vis >= 10000) { $returner .= round($vis/1000) . " km,\n"; } } if ($sky = getSky($metarParts[$a],$lang)) { $returner .= "$sky,\n"; } if ($cond = getConditions($metarParts[$a],$lang)) { if ($cond == "nsw") { if ($weatherType["type"]=="main") { $returner .= "no significant weather\n"; $oldcond = "no significant weather\n"; // if this appears the meteorologist } else { // must be stupid: NSW will breakup ROFL $returner .= "$oldcond will breakup\n"; } } else { $returner .= "$cond\n"; $oldcond = $cond; $oldcond = str_replace("light ","",$oldcond); $oldcond = str_replace("heavy ","",$oldcond); $oldcond = str_replace("vereinzelt ","",$oldcond); $oldcond = str_replace("verstärkt ","",$oldcond); } } $returner .= "
    \n"; } if (($lang == "DE") || ($lang == "de")) $returner=translateEasyWeather($returner); return $returner; } function displayEasyForecast($TAF,$lang) { $tafParts = getTafParts($TAF); for ($a=0;$a
    "; } $returner .= "Forecast "; if ($validtime = getValidTime ($tafParts[$a], $lang)) { $returner .= "for $validtime"; } $returner .= ":
    \n"; break; case "prob": $returner .= "there is a probability of ".$forecast["chance"]." %\n"; if ($forecast["init"] == 2) { $returner .= "between " . getShortValidTime($tafParts[$a],$lang)."\n"; } $returner .= "for:
    \n"; break; case "becmg": $returner .= ""; if ($forecast["chance"] != 100) { $returner .= "there is a probability of ".$forecast["chance"]." % that\n"; if ($forecast["init"] == 3) { $returner .= "between " . getShortValidTime($tafParts[$a],$lang)."\n"; } } else { if ($forecast["init"] == 2) { $returner .= "between " . getShortValidTime($tafParts[$a],$lang)."\n"; } } $returner .= "weather will turn into:
    \n"; break; case "tempo": $returner .= ""; if ($forecast["chance"] != 100) { $returner .= "there is a probability of ".$forecast["chance"]." % that\n"; if ($forecast["init"] == 3) { $returner .= "between " . getShortValidTime($tafParts[$a],$lang)."\n"; } } else { if ($forecast["init"] == 2) { $returner .= "between " . getShortValidTime($tafParts[$a],$lang)."\n"; } } $returner .= "weather will temporarily change into:
    \n"; break; case "amfm": $returner .= ""; if ($forecast["chance"] != 100) { $returner .= "there is a probability of ".$forecast["chance"]." % that\n"; } $returner .= "at " . getFmTime($tafParts[$a], $lang) ."\n"; $returner .= "weather change into:
    \n"; break; } if ($wind = getWind($tafParts[$a])) { if ($wind["dir"]=="variable") { $returner .= "Wind direction changing "; } else { $returner .= "Winds from ".$wind["dir"]." (".$wind["deg"]."°) "; } $returner .= "force ".$wind["wbf"]." beaufort ("; $returner .= $wind["wkt"]." knots)"; if ($wind["gkt"] > $wind["wkt"]) { $returner .= " with gusts up to ".$wind["gbf"]; $returner .= " beaufort (".$wind["gkt"]." knots)"; } $returner .= ",\n"; } if ($temp = getTafTemp($tafParts[$a],$lang)) { $returner .= "Temperature: " . $temp["temp"] . "°C at " . $temp["time"] . ",\n"; } if ($dew = getMetarDewpoint($tafParts[$a])) { $returner .= "Dewpoint: $dew°C,\n"; } if ($hum = getMetarHumidity($tafParts[$a])) { $returner .= "Humidity: $hum %,\n"; } if ($press = getPressure($tafParts[$a])) { $returner .= "Air pressure: $press hPa,\n"; } if ($vis = getVisibility($tafParts[$a])) { $returner .= "Visibility: "; if ($vis == 9999) { $returner .= "more than 10 km,\n"; } else if ($vis == 8888) { $returner .= "more than 10 km, no clouds below 5000 ft, no precipitation\n"; } else if ($vis < 10000) { $returner .= "$vis meters,\n"; } else if ($vis >= 10000) { $returner .= round($vis/1000) . " km,\n"; } } if ($sky = getSky($tafParts[$a],$lang)) { $returner .= "$sky,\n"; } if ($cond = getConditions($tafParts[$a],$lang)) { if ($cond == "nsw") { if ($weatherType["type"]=="main") { $returner .= "no significant weather\n"; $oldcond = "no significant weather\n"; // if this appears the meteorologist } else { // must be stupid: NSW will breakup ROFL $returner .= "$oldcond will breakup\n"; } } else { $returner .= "$cond\n"; $oldcond = $cond; $oldcond = str_replace("light ","",$oldcond); $oldcond = str_replace("heavy ","",$oldcond); $oldcond = str_replace("vereinzelt ","",$oldcond); $oldcond = str_replace("verstärkt ","",$oldcond); } } $returner .= "
    \n"; } if (($lang == "DE") || ($lang == "de")) $returner=translateEasyWeather($returner); return $returner; } function displayCountryMenu($name,$class) { global $$name; $predef = $$name; $urlParts = explode("/",$_SERVER['SCRIPT_NAME']); $filename = $urlParts[(count($urlParts)-1)]; $returner .= "\n"; return $returner; } function displayStationMenu($state,$name,$class) { global $$name; $predef = $$name; $returner .= "\n"; return $returner; } function getTafParts($tafcode) { $tafItemArray=clearTAF($tafcode); $lastTafindex = 0; $aktTafIndex = 0; for ($a=0;$a ($lastTafindex+2))) { for ($b=$lastTafindex;$b<$a;$b++) { $returner[$aktTafIndex] .= " ".$tafItemArray[$b]; } $returner[$aktTafIndex] = trim($returner[$aktTafIndex]); $lastTafindex = $a; $aktTafIndex++; } } for ($b=$lastTafindex;$b<$a;$b++) { $returner[$aktTafIndex] .= " ".$tafItemArray[$b]; } if (isset($returner)) { return $returner; } else { return false; } } function getMetarParts($tafcode) { $tafItemArray=clearTAF($tafcode); $lastTafindex = 0; $aktTafIndex = 0; for ($a=0;$a ($lastTafindex+2))) { for ($b=$lastTafindex;$b<$a;$b++) { $returner[$aktTafIndex] .= " ".$tafItemArray[$b]; } $returner[$aktTafIndex] = trim($returner[$aktTafIndex]); $lastTafindex = $a; $aktTafIndex++; } } for ($b=$lastTafindex;$b<$a;$b++) { $returner[$aktTafIndex] .= " ".$tafItemArray[$b]; } if (isset($returner)) { return $returner; } else { return false; } } function getTafType($tafcode) { $tafItemArray=clearTAF($tafcode); if (ereg("^FM([0-9]{4})$", $tafItemArray[0])) { $returner["chance"] = 100; $returner["type"] = "amfm"; $returner["init"] = 1; } else if (ereg("^PROB([0-9]{2})$", $tafItemArray[0]) && ereg("^FM([0-9]{4})$", $tafItemArray[1])) { $returner["chance"] = 1 * substr($tafItemArray[0],4,2); $returner["type"] = "amfm"; $returner["init"] = 2; } else if (($tafItemArray[0] == "BECMG") && !ereg("^(((([01]{1})([0-9]{1}))|(2([0-4]{1}))){2})$", $tafItemArray[1])) { $returner["chance"] = 100; $returner["type"] = "becmg"; $returner["init"] = 1; } else if (($tafItemArray[0] == "BECMG") && ereg("^(((([01]{1})([0-9]{1}))|(2([0-4]{1}))){2})$", $tafItemArray[1])) { $returner["chance"] = 100; $returner["type"] = "becmg"; $returner["init"] = 2; } else if (ereg("^PROB([0-9]{2})$", $tafItemArray[0]) && ($tafItemArray[1] == "BECMG") && !ereg("^(((([01]{1})([0-9]{1}))|(2([0-4]{1}))){2})$", $tafItemArray[2])) { $returner["chance"] = 1 * substr($tafItemArray[0],4,2); $returner["type"] = "becmg"; $returner["init"] = 2; } else if (ereg("^PROB([0-9]{2})$", $tafItemArray[0]) && ($tafItemArray[1] == "BECMG") && ereg("^(((([01]{1})([0-9]{1}))|(2([0-4]{1}))){2})$", $tafItemArray[2])) { $returner["chance"] = 1 * substr($tafItemArray[0],4,2); $returner["type"] = "becmg"; $returner["init"] = 3; } else if (($tafItemArray[0] == "TEMPO") && !ereg("^(((([01]{1})([0-9]{1}))|(2([0-4]{1}))){2})$", $tafItemArray[1])) { $returner["chance"] = 100; $returner["type"] = "tempo"; $returner["init"] = 1; } else if (($tafItemArray[0] == "TEMPO") && ereg("^(((([01]{1})([0-9]{1}))|(2([0-4]{1}))){2})$", $tafItemArray[1])) { $returner["chance"] = 100; $returner["type"] = "tempo"; $returner["init"] = 2; } else if (ereg("^PROB([0-9]{2})$", $tafItemArray[0]) && ($tafItemArray[1] == "TEMPO") && !ereg("^(((([01]{1})([0-9]{1}))|(2([0-4]{1}))){2})$", $tafItemArray[2])) { $returner["chance"] = 1 * substr($tafItemArray[0],4,2); $returner["type"] = "tempo"; $returner["init"] = 2; } else if (ereg("^PROB([0-9]{2})$", $tafItemArray[0]) && ($tafItemArray[1] == "TEMPO") && ereg("^(((([01]{1})([0-9]{1}))|(2([0-4]{1}))){2})$", $tafItemArray[2])) { $returner["chance"] = 1 * substr($tafItemArray[0],4,2); $returner["type"] = "tempo"; $returner["init"] = 3; } else if (ereg("^PROB([0-9]{2})$", $tafItemArray[0]) && ($tafItemArray[1] != "BECMG") && ($tafItemArray[1] != "TEMPO") && !ereg("^(((([01]{1})([0-9]{1}))|(2([0-4]{1}))){2})$", $tafItemArray[1])) { $returner["chance"] = 1 * substr($tafItemArray[0],4,2); $returner["type"] = "prob"; $returner["init"] = 1; } else if (ereg("^PROB([0-9]{2})$", $tafItemArray[0]) && ereg("^(((([01]{1})([0-9]{1}))|(2([0-4]{1}))){2})$", $tafItemArray[1])) { $returner["chance"] = 1 * substr($tafItemArray[0],4,2); $returner["type"] = "prob"; $returner["init"] = 2; } else { $returner["chance"] = 100; $returner["type"] = "main"; $returner["init"] = 0; } return $returner; } function getMetarType($tafcode) { $tafItemArray=clearTAF($tafcode); if ($tafItemArray[0]=="BECMG") { $returner["chance"] = 100; $returner["type"] = "becmg"; $returner["init"] = 1; } else if ($tafItemArray[0]=="TEMPO") { $returner["chance"] = 100; $returner["type"] = "tempo"; $returner["init"] = 1; } else if ($tafItemArray[0]=="NOSIG") { $returner["chance"] = 100; $returner["type"] = "nosig"; $returner["init"] = 1; } else { $returner["chance"] = 100; $returner["type"] = "main"; $returner["init"] = 0; } return $returner; } ?>