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

    +171

    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
    <?if ($tip1[1]=="avi"){?>class="lnk-avi"<?}
      elseif ($tip1[1]=="djv"){?>class="lnk-djv"<?}
      elseif ($tip1[1]=="doc"){?>class="lnk-doc"<?}
      elseif ($tip1[1]=="flv"){?>class="lnk-flv"<?}
        elseif ($tip1[1]=="pdf"){?>class="lnk-pdf"<?}
      elseif ($tip1[1]=="jpeg"){?>class="lnk-jpeg"<?}
        elseif ($tip1[1]=="jpg"){?>class="lnk-jpeg"<?}
    	  elseif ($tip1[1]=="JPEG"){?>class="lnk-jpeg"<?}
    	    elseif ($tip1[1]=="JPG"){?>class="lnk-jpeg"<?}
      elseif ($tip1[1]=="pdf"){?>class="lnk-pdf"<?}
      elseif ($tip1[1]=="png"){?>class="lnk-png"<?}
      elseif ($tip1[1]=="swf"){?>class="lnk-swf"<?} 
        elseif ($tip1[1]=="gif"){?>class="lnk-gif"<?}
      elseif ($tip1[1]=="xls"){?>class="lnk-xls"<?}?>
      ><?=$VALUESIO[$i]?></a>, <?=$tip1[1];?>, <?=$size1;?>Мб

    case придумали дураки)

    нашол в проекте, который сейчас доделываю)

    Запостил: kudin, 16 Августа 2010

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

    • ... а логическое ИЛИ и работу со строками ещё не придумали.
      Ответить
      • ...и еще лоу-кейс
        Ответить
      • я думаю тут вообще можно без кейса, еслаифа, логического или и работы со строками.
        как то так:
        class="lnk-<?php echo(strtolower($tip1[1]));  ?>"

        и далее по тексту
        Ответить
    • > нашол в проекте, который сейчас доделываю)
      <joke>всмысле дописываете еще несколько десятков elseif?</joke>
      Ответить
    • case в данном примере действительно нужен дуракам
      Ответить
      • а как правильнее?)
        Ответить
        • Через массив. типа такого:
          $classes = array(
            'flv' => 'lnk-flv',
            'jpeg' => 'lnk-jpg',
            ...
          );
          $class = $classes[strtolower($tip1[1])];

          Плюс это даёт универсальность. А что если при добавлении какого-нибудь нового типа файла (скажем, aaa) у него будет класс не lnk-aaa, а class-aaa?
          Ну или тогда приводить все стили к общему виду. тогда можно будет тупо написать
          $class = 'lnk-'.strtolower($tip1[1]);
          Ответить
          • правильнее классы называть соответствующе
            Ответить
            • А лучше и вообще фабрику классов баххнуть, можно ещё адаптеры под каждый тип сделать.

              Но для микросмертных проектов все эти понты ни к чему - лучше массив.
              Ответить

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