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

    +3

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    function getLastItemName( $items ) {
    
      $lastItemName = '';
    
      foreach( $items as $item ) {
        $lastItemName = $item['name'];
      }
    
      return $lastItemName;
    }

    Имеем в проекте кучу россыпей подобного вида.
    Собственно, существует ли эффективный способ с этим бороться?

    Запостил: bot, 18 Января 2016

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

    • Клавиатурой по лицу?
      Ответить
      • лицо то что? нужно по пальцам, линейкой.
        Ответить
        • А лучше взять ножницы по металу, и отрезать по пальцу, за каждую итерацию)
          Ответить
          • А если итераций больше 21?
            Ответить
            • Можно по кусочку пальца.. Но я думаю, когда ему в третий раз начнут отрезать палец, он одной рукой перепишет этот код и изучит документацию)
              Ответить
    • В PHP нельзя взять крайний элемент коллекции? типа .last(), [-1] и т.д.
      Ответить
      • В PHP можно практически всё. В том числе, и таким больным способом. Иногда, именно это и вызывает печаль.
        Ответить
      • Это еще не самый худший способ выстрелить себе в ногу.
        Ответить
      • $last = $a[count($a)];
        
        $last = array_pop($a);
        
        end($a);
        $last = current($a);
        Ответить
        • end($a);
          $last = current($a);


          current тут лишний. $last = end($a) достаточно.
          Ответить
        • // $last = $a[count($a)];
          ну охуеть теперь. такое как это вообще в голову может прийти? шаблонорвань просто...
          Ответить
        • array_pop сбрасывает же сверху
          Ответить
    • А как нормально делать?
      Без прохода по массиву, или полного его преобразования.
      Ответить
      • Похоже так http://php.net/manual/ru/function.end.php
        Ответить
      • Да хотя бы через "array_pop". Но грустный цимус ещё и в том, что оный "алгоритм" юзается не только в долбаном PHP. На том самом фронтэнде, даже в JS, успелось это развидеть.
        Хорошо, что до SQL не добрались.
        Порой жалеешь, что не существует "gcc" для таких "контактов третьего рода". Ну или, хотя бы, что-то вроде "jit".
        Но в реальности нет ни "gcc" ни "jit", а только какой-то "sex" и "php". Тоже три буквы, но зато - столько ебли!
        Трёмя словами: "Расмус - пидр, сука!"
        Ответить
    • дом престарелых?
      Ответить
    • Интересно, а если ещё надо было-бы отсортировать по фамилии, как бы это выглядело бы
      Ответить

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