1. PHP / Говнокод #8970

    +157

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    function numword() {  
        $args = func_get_args();  
        $num = $args[0] % 100;  
         
        if ($num > 19) {  
            $num = $num % 10;  
        }  
    
        switch ($num) {  
            case 1:  { return $args[1]; }  
            case 2:  
            case 3:  
            case 4:  { return $args[2]; }  
            default: { return $args[3]; }  
        }  
    }

    Склонение слов по числам

    Запостил: Skitch, 07 Января 2012

    Комментарии (6) RSS

    • > Склонение слов по числам
      Для какого языка?
      Нормально выглядит, в чем прикол кэп (неправильно склоняет)?
      Ответить
    • Использовать:
      echo numword('1', 'человек', 'человека', 'человек');
      Ответить
    • function declOfNum($number, $titles)
      {
          $cases = array (2, 0, 1, 1, 1, 2);
          return $number." ".$titles[ ($number%100>4 && $number%100<20)? 2 : $cases[min($number%10, 5)] ];
      }
      echo 'Я знаю '.declOfNum(5, array('иностранный язык', 'иностранных языка', 'иностранных языков'));
      Ответить
    • Потом ее перевернули на живот, и стали трахать в попу, снова один за другим, матерясь и нанося удар за ударом.
      Ответить

    Добавить комментарий