"PHP" / Говнокод #3222 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  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
function render_menu_item($tag,$value,$css=null){
$length=strlen($tag);
   
    //Validate the tags
      if($tag[0]=='<' && $tag[$length-1]=='>'){
        $closingtag=str_replace('<','</',$tag);
        if($css)
            $tag=str_replace('>',' class="'.$css.'">',$tag);        
      }
      else{
        if($css){       
        $classtag='<'.$tag.' class="'.$css.'">';
        $tag='<'.$tag.'>';
        $closingtag=str_replace('<','</',$tag);
        $tag=$classtag;
        }
        else{
        $tag='<'.$tag.'>';
        $closingtag=str_replace('<','</',$tag);
        }
      }  
  return $tag.$value.$closingtag;
}

Вот так пишут доблестные Drupal-разработчики из Иордании. Сохранено оригинальное форматирование.

Запостил: UncleAli UncleAli, (Updated )

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

  • Я надеюсь результат хотя бы кэшируется?
    И зачем три раза определять $closingtag?
    ГК.
    Ответить
  • регулярные выражения - это сатанинские штучки!!
    Ответить
    • Не лучше ли заготовить нарезки в виде шаблона:
      <a href="%1$s" class="%2$s">%3$s</a>
      <!--LIMITER-->
      <ul class="%1$s">%2$s</ul>
      <!--LIMITER-->
        <li class="%1$s">%2$s</li>
      Ответить
  • Где вы видели закрывающий тег "</", обычно он такой "/>"?

    Какой-то вообще неработоспособный код.
    Ответить

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

Помни, guest, за тобой могут следить!

    А не использовать ли нам bbcode?


    8