Forums / National / Russian / Зоопарк с окончаниями

Sergey
#7387 2009-02-09 07:22
Вы наверное будете смеяться, но такую функцию по назначению, я еще в LDU предлагал:
function numwords($mydigit,$lang,$word)
        {
        if (empty($word)) {return;}
        $ew=explode(",",$word);
        $mydigit=abs((int)$mydigit);
        switch($lang)
              {
         case "ru":
                  {
                  while($mydigit>20) {$mydigit=$mydigit%10;}
                  if($mydigit == 0) {return ($ew[0].$ew[1]);}
                  if($mydigit == 1) {return ($ew[0].$ew[2]);}
                  if($mydigit >= 2 && $mydigit <= 4 )  {return ($ew[0].$ew[3]);}
                  if($mydigit >= 5 && $mydigit <= 20 ) {return ($ew[0].$ew[4]);}
                  }
         case "uk":
                  {
                  if($mydigit == 0) {return ($ew[0].$ew[1]);}
                  if($mydigit == 1) {return ($ew[0].$ew[2]);}
                  if($mydigit >1)   {return ($ew[0].$ew[3]);}
                  }
         default:{}
               }
       return ($word);
       }
и соответствующие изменения в языковом файле например:
$L['File_s'] = "Файл,ов,,а,ов";
предложение не получило поддержки :-)
www.cotonti.mobi