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

    +148

    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
    /*
     @param array $menu_array Array of pages
     @param string $current Current page
     @return string $menu Menu.
    */
    function CreateMenu($menu_array, $current)
    {
        foreach($menu_array as $key => $value)
        {
            if($key == $current) $active = " class=\"active\"";
            
            $menu .= "<li$active><a href=\"$key\">$value</a></li>\n";
            unset($active);
        }
        
        return $menu;
    }

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

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

    • и где тут гавно, в целом ?
      Ответить
      • $active выдаёт notice, т.к. 13 стр. - unset();

        $menu не инициализировано - опять notice.

        Нет обработки ошибок.
        Нет возможности получения в массиве.
        Ответить
        • тоесть -
          function CreateMenu($menu_array, $current)
          {
          $menu = '';
          if(is_array($menu_array)) {
          foreach($menu_array as $key => $value)
          {
          if($key == $current)
          $active = " class=\"active\"";
          else
          $active = "";

          $menu .= "<li$active><a href=\"$key\">$value</a></li>\n";
          }
          }

          return $menu;
          }
          Уже не гавно ? Мне кажется это не критично все ... по мимо того что не проверяется массив ли входные данные, а то иначе foreach будет ругаться ...
          Ответить
      • А так в целом реализация на WordPress похожа.
        Ответить
      • Классика говна. Нет возможности управлять отображением. Я вот например хочу класс CSS добавить и что лезть в код. А если я в двух и более местах меню использую городить огороды с контейнерами ? В целом говно. Но если используется для одного хомяка и не претендует на гордое название "модуль построения меню CMS" то не страшно.
        Ответить

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