Внимание! Если какой-либо параметр отсутствует, то в соответствующем поле может быть как пусто, так и стоять "-". count - кол-во городов с фактом в этом файле t - Название города tc - Страна tf - температура yc - код явления (расшифровка ниже) ns - ночью стоит буква "n", днем - пусто cb - кол-во баллов облачности (от 0 до 10) hum - относительная влажность (%) tz - временная зона, если стоит "0" - то зона не определена или нулевая и все время представлено как UTC isdst - летнее время. Зимой 0, летом - кол-во часов, которое нужно прибавить к Tz для получения летнего времени wc - температура с учетом влияния ветра. Устарела, оставлена для совместимости. hi - эффективная температура. Статья тут. nc - индекс комфортности (от 1 до 10). Статья тут. ws - скорость ветра (м/с) wd - направление ветра в градусах (расшифровка ниже) pr - давление (мм ртутного столба) pn - если в этом городе полярная ночь, то значение в этом поле присутствует, иначе - отсутствует. pd - если в этом городе полярный день, то значение в этом поле присутствует, иначе - отсутствует. wt - температура воды sr - время восхода Солнца в виде ЧЧ:ММ sf - время захода Солнца в виде ЧЧ:ММ sd - продолжительность светового дня в виде ЧЧ:ММ mr - время восхода Луны в виде ЧЧ:ММ mf - время захода Луны в виде ЧЧ:ММ mp - фаза луны (от 0 до 16) примеры наших значков для фаз тут mnr - параметр, который звучит как "Луна в течение суток не восходит". Если не восходит, то в поле присутствует значение, иначе - нет. mnf - параметр, который звучит как "Луна в течение суток не заходит". Если не заходит, то в поле присутствует значение, иначе - нет. to - время наблюдения в виде ЧЧ:ММ do - дата наблюдения в формате ДД.ММ.ГГГГг.Расшифровка направлений ветра:
If (degres==0) return "штиль" If (degres==990) return "переменных направлений" If ((degres>0 AND degres<=11) OR (degres>=349 AND degres<=360)) return "С" If (degres>=12 AND degres<=33) return "ССВ" If (degres>=34 AND degres<=56) return "СВ" If (degres>=57 AND degres<=78) return "ВСВ" If (degres>=79 AND degres<=101) return "В" If (degres>=102 AND degres<=123) return "ВЮВ" If (degres>=124 AND degres<=146) return "ЮВ" If (degres>=147 AND degres<=168) return "ЮЮВ" If (degres>=169 AND degres<=191) return "Ю" If (degres>=192 AND degres<=214) return "ЮЮЗ" If (degres>=215 AND degres<=236) return "ЮЗ" If (degres>=237 AND degres<=258) return "ЗЮЗ" If (degres>=259 AND degres<=281) return "З" If (degres>=282 AND degres<=303) return "ЗСЗ" If (degres>=304 AND degres<=326) return "СЗ" If (degres>=327 AND degres<=348) return "ССЗ "Расшифровка кодов погоды yc :
Примеры наших значков для кодов погоды тут Схема формирования названия файла значка для этого примера следующая: берется значение из поля "yc", если оно отсутствует, равно "-", или оказывается в этом списке: 0,1,2,3,4,5,6,7,8,10,14,15,16,36,37,40 то к строке "10" дополняется значение из поля "cb". Например, значение в поле "yc" 6, в поле "cb" - 4. Результирующий код получится "104". Другими словами, если код погоды отсутствует или входит в запрещенный список, то значек выводится по значению баллов облачности. Если код погоды присутствует и не входит в запрещенный список, то он выводится "как есть". Так-как некоторые коды (значки) погоды имеют неоднозначное представление при разных значениях облачности, то рекомендуется следующая функция для подмены кодов погоды для отображения значка погоды (пример на PHP): function code_repl($Yc,$Cb) { $m7=Array(21=>25,22=>74,23=>26,24=>26,82=>81,88=>87,90=>89); $br7=Array(25=>82,26=>67,27=>87); $b7=Array(29=>97,50=>51,52=>53,54=>55,60=>61,62=>63,64=>65,70=>71, 72=>73,74=>75,76=>71,78=>71,80=>61,81=>82,83=>66,84=>67,85=>71,86=>75, 87=>88,89=>90,91=>97,92=>97,93=>99,94=>99,95=>97,96=>99); $b2_7=Array(76=>70,78=>70); $r=$Yc; If (($Cb<7) AND (IsSet($m7[$Yc]))) $r=$m7[$Yc]; If (($Cb>=7) AND (IsSet($br7[$Yc]))) $r=$br7[$Yc]; If (($Cb>7) AND (IsSet($b7[$Yc]))) $r=$b7[$Yc]; If (($Cb>2) AND ($Cb<7) AND IsSet($b2_7[$Yc])) $r=$b2_7[$Yc]; return $r; } где $Yc - переданный код явления погоды, $Cb - переданный код баллов облачности. При этом текстовое описание погоды берется по переданному коду явления погоды, а не по подмененному. После этого перед получившимся кодом добавляется значение поля "ns" (ночью оно равно "n") и, таким образом, получается код значка для ночи.Всего кодов для фактической погоды 100 - от 0 до 99, их словесное описание:
$codes_descr=array("","облачность","облачность","облачность","облачность","мгла", "пыль в воздухе","пыль поднятая ветром","пыльные вихри","пыльная буря","дымка", "туман","туман","зарница","осадки","осадки", "осадки","гроза","шквал","смерчь","морось, снежные зерна", "дождь","снег","дождь со снегом","осадки","ливневый дождь", "ливневый дождь со снегом","град, крупа","туман","гроза","пыльная буря", "пыльная буря","пыльная буря","сильная пыльная буря","сильная пыльная буря","сильная пыльная буря", "поземок","сильный поземок","метель","сильная метель","облачность", "местами туман","туман","сильный туман","туман","сильный туман", "туман","сильный туман","туман с отложениями изморози","сильный туман с отложениями изморози","временами слабая морось", "слабая морось","временами морось","морось","временами сильная морось","сильная морось", "слабая замерзающая морось","сильная замерзающая морось","слабая морось с дождем","сильная морось с дождем","временами слабый дождь", "слабый дождь","временами дождь","дождь","временами сильный дождь","сильный дождь", "слабый дождь, образующий гололед","сильный дождь, образующий гололед","слабый дождь со снегом","сильный дождь со снегом","временами слабый снег", "слабый снег","временами снег","снег","временами сильный снег","сильный снег", "ледяные иглы","снежные зерна","отдельные снежинки","ледяной дождь","слабый ливневый дождь", "сильный ливневый дождь","очень сильный ливневый дождь","слабый ливневый дождь со снегом","сильный ливневый дождь со снегом","слабый ливневый снег", "сильный ливневый снег","слабая ливневая крупа","ливневая крупа","слабый град","сильный град", "слабый дождь, гроза","сильный дождь, гроза","слабый дождь со снегом, гроза","сильный дождь со снегом, гроза","гроза", "гроза, град","сильная гроза","гроза, пыльная буря","сильная гроза, град");Словесное описание для баллов обачности:
$clouds_descr=array("ясно","ясно","малооблачно","небольшая облачность","переменная облачность", "переменная облачность","облачно с прояснениями", "облачность с просветами","пасмурно","неба не видно","полупрозрачная облачность");