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

    +160

    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
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    if ($panel_array[$i] == 1)
    {
    	$tpl->add('USER_PANEL', $user_panel['load_img']);
    }
    elseif ($panel_array[$i] == 2)
    {
    	$tpl->add('USER_PANEL', $user_panel['manual']);
    }
    elseif ($panel_array[$i] == 3)
    {
    	$tpl->add('USER_PANEL', $user_panel['search']);
    }
    elseif ($panel_array[$i] == 4)
    {
    	$tpl->add('USER_PANEL', $user_panel['chat']);
    }
    elseif ($panel_array[$i] == 5)
    {
    	$tpl->add('USER_PANEL', $user_panel['faq']);
    }
    elseif ($panel_array[$i] == 6)
    {
    	$tpl->add('USER_PANEL', $user_panel['game']);
    }
    elseif ($panel_array[$i] == 7)
    {
    	$tpl->add('USER_PANEL', $user_panel['image']);
    }

    Снёс высотку, построил сарай

    Запостил: Genka, 16 Декабря 2010

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

    • показать все, что скрытовъебал минус, ибо я Великий Гудвин
      Ответить
    • Это уже было, неумение пользоваться кейсами и лишние скобки
      Конечно, проще было бы так:
      $bebebe=array(0,'load_img','manual','sea rch');
      tpl->add('USER_PANEL', $user_panel[$bebebe[$panel_array[$i]]]);
      даже без кейсов
      Ответить
      • показать все, что скрытоздесь нет лишних скобок, и пользоваться конструкциями switch case либо if elseif else это всего лишь дело вкуса, нету тут гавна
        Ответить
        • Если после условия всего одна строка, то скобки только способствуют разбеганию глаз.
          Как же нет говна, если задача решалась в две строки?
          Ответить
          • показать все, что скрытомалоубедительный аргумент
            Ответить
            • Ты это пишешь в надежде, что тебя кто-то будет убеждать?
              Ответить
          • Вот насчет скобок не согласен, всегда ставлю, все гламурно и читабельно.
            Не кормите тролля и он умрет.
            Ответить
            • Ты только что покормил.
              -- К.О.
              Ответить
              • Ещё немного, и я стану минусовать всех отвечающих komprenda первого уровня. Даже если сказали очень умную и уместную фразу.
                Ответить
            • Однажды написал большой кусок кода (на js), где по возможности старался избегать лишних упоминаний скобок. Получилось прилично.
              А потом, в один прекрасный момент, решил это дело упаковать js-пакером...
              С тех пор всегда использую эти скобки, и читабельность лучше, и последствий меньше...
              Ответить
              • это говорит только о том, что данный отдельно взятый обфускатор большее говно, чем остальные
                https://developer.mozilla.org/en/JavaScript/Reference/Operators/Operator_Precedence же
                Ответить
          • разбеганию глаз способствует косоглазие, а не наличие скобок
            Ответить
            • косоглазие обостряется, как правило, под конец рабочего дня, и особенно в пятницу вечером...
              Ответить
            • То есть вам удобно лицезреть две лишние ничего не делающие строки?
              Ответить
              • это лицезреть всяко лучше семипробельной табуляции
                Ответить
      • вот и я так решил сделать
        Ответить
      • мне кажется тут налицо неумение пользовацо (ассоциативными) массивами
        Ответить
    • А кстати, в php есть ограничение вложенности elseif'ов? А то на rsdn.ru пробегало, что в VC только 127 штук и всё.
      Ответить
      • какая жалость! это сильно ограничивает возможности языка
        Ответить
        • if () else if () else if () else if () ...
          С точки зрения синтаксиса это именно вложения, хотя форматируется такой код обычно на одном уровне.
          Ответить
          • Добавление в язык ключевого слова elseif тем более непонятно.
            Ответить
          • начилие switch case или if elseif elseif elseif должно подсказывать что пора делать рефакторинг :)

            в данном случае можно в классе задать константу
            const USER_PANELS = array(1=>'load_img', 2=> 'manual');

            и вызывать просто
            $panel_type = SomeClass::USER_PANELS[$panel_array[$i]];
            $tpl->add('USER_PANEL', $user_panel[$panel_type]);


            А еще лучше:
            $panel = PanelFactory::newPanel($panel_array[$i]);
            $tpl->add('USER_PANEL', $panel);
            Ответить
      • показать все, что скрытоЯ же говорил, что рождение языка Си - это ошибка! В нём даже 128 елсеифов нельзя задать!
        Ответить
        • А это ограничение именно языка? От компилятора все зависит же.
          Ответить
          • Да, потому что язык Си придумали в ЦРУ специально для того, чтобы внедрить его в СССР и тем самым отбросить отечественную электронику на 10 лет назад!
            Ответить
            • ага а сами писали на КуБасике
              Ответить
            • > внедрить его в СССР
              ...Но дальше CPP дело не пошло, а потом и самим понравилось :)
              (Хотя, C# это, наверно, CPPP)
              Ответить
              • Холмс так и не бросил курить, а вот Ватсон без трубки уже не может
                Ответить
            • Хмм... А насчёт php какие версии?
              Ответить
              • Хз, надо погуглить. Гоны про Си я не сам придумываю же.
                Ответить
              • PHP - это неудачная разработка британских учёных. Они хотели написать что-нибудь стоящее, но у них получилось только PseudoHatePron.
                Ответить
                • да каких ученых... це ж наш Мыкола по пияни заслал
                  Ответить
                • PuttyHurtsPorno
                  Ответить
                • phacepalm же!
                  Ответить
                  • А как переводится phace?
                    Щас ради интереса забил в гуглтранслэйт phacepalm, а он мне в ответ: Возможно, вы имели в виду: facepalm?
                    Щелкаю сцылку, а он мне типа - перевода не знаю ((
                    Ответить
                    • ну как phear, phorce и т.д. :)

                      http://www.fark.com/cgi/comments.pl?IDLink=5380664&hl=Photoshop-this-phacepalm
                      Ответить
            • Сначала не было ничего.
              Пока Бог не создал процессор, машинные коды.
              А на седьмой день Бог создал программиста по своему образу и подобию.

              Затем змей-искуситель Си сорвал с дерева операционных систем яблочко Unix...
              Так программистов изгнали из рая...
              (j/k)
              Ответить
            • Настолько толсто, что даже тонко.
              Ответить

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