Update of /cvsroot/phpweather/phpweather In directory usw-pr-cvs1:/tmp/cvs-serv13725 Modified Files: metar_parser.php Log Message: I've updated the code that produces the weather-string, so that it's more correct now. It probably still needs some testing. Index: metar_parser.php =================================================================== RCS file: /cvsroot/phpweather/phpweather/metar_parser.php,v retrieving revision 1.6 retrieving revision 1.7 diff -u -3 -r1.6 -r1.7 --- metar_parser.php 2001/05/20 13:07:16 1.6 +++ metar_parser.php 2001/06/28 11:44:01 1.7 @@ -317,21 +317,24 @@ $decoded_metar['runway_group' . $runway_groups]['meter'] = $regs[4] * 1; $decoded_metar['runway_group' . $runway_groups]['ft'] = round($regs[4] * 3.28084); } - } elseif (ereg('^(-|\+|VC)?(BC|BL|DR|FZ|MI|PR|SH|TS)?((BR|DS|DU|FC|FG|FU|HZ|PO|SA|SQ|SS|VA|DZ|GR|GS|IC|PL|RA|SG|SN|PL|UP|PY)+)$', $part, $regs)) { + } elseif (ereg('^(VC)?' . /* Proximity */ + '(-|\+)?' . /* Intensity */ + '(MI|PR|BC|DR|BL|SH|TS|FZ)?' . /* Descriptor */ + '((DZ|RA|SN|SG|IC|PE|GR|GS|UP)+)?' . /* Precipitation */ + '(BR|FG|FU|VA|DU|SA|HZ|PY)?' . /* Obscuration */ + '(PO|SQ|FC|SS)?$', /* Other */ + $part, $regs)) { /* * Current weather-group */ $weather_groups++; - $decoded_metar['weather_group'.$weather_groups]['intensity'] = $regs[1]; - $decoded_metar['weather_group'.$weather_groups]['prefix'] = $regs[2]; - if (strlen($regs[3]) > 2) { - ereg('^(BR|DS|DU|FC|FG|FU|HZ|PO|SA|SQ|SS|VA|DZ|GR|GS|IC|PL|RA|SG|SN|PL|UP|PY)?(BR|DS|DU|FC|FG|FU|HZ|PO|SA|SQ|SS|VA|DZ|GR|GS|IC|PL|RA|SG|SN|PL|UP|PY)$', $regs[3], $mprecip_type); - $decoded_metar['weather_group'.$weather_groups]['weather'] = $mprecip_type[1]; - $decoded_metar['weather_group'.$weather_groups]['weather2'] = $mprecip_type[2]; - } - else { - $decoded_metar['weather_group'.$weather_groups]['weather'] = $regs[3]; - } + $decoded_metar['weather_group'.$weather_groups]['proximity'] = $regs[1]; + $decoded_metar['weather_group'.$weather_groups]['intensity'] = $regs[2]; + $decoded_metar['weather_group'.$weather_groups]['descriptor'] = $regs[3]; + $decoded_metar['weather_group'.$weather_groups]['precipitation'] = $regs[4]; + $decoded_metar['weather_group'.$weather_groups]['obscuration'] = $regs[6]; + $decoded_metar['weather_group'.$weather_groups]['other'] = $regs[7]; + } elseif ($part == 'SKC' || $part == 'CLR') { /* * Cloudr-group. _______________________________________________ PHPWeather-checkins mailing list [EMAIL PROTECTED] http://lists.sourceforge.net/lists/listinfo/phpweather-checkins