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

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
$userList = "";
foreach ($this->currentUsers as $k => $v)
{ 
    $userList .= ($v->first_name . (empty($v->middle_name) ? "" : " " . $v->middle_name)  . " " . $v->last_name . ", ");
}
$userList = substr($userList, 0, -2);
?>
<?= $userList ?>

Индусы отдыхают.

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

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

    • нет, у человека было достаточно времени на обдумывание.
      Ответить
  • Не вижу ничего смертельного, кроме лишних скобок, $k и последней строчки.
    Ответить
    • печально, что не видите...смертельного ничего и нету, но такая манера написания кода - это лол)
      Ответить
      • ну на самом деле - implode здесь в пролёте без предварительной обработки массива, а юзание array_map и т.п. потребует написание хоть и маленькой, но callback-функции. Оно может быть и будет кошернее выглядеть, но даже в читабельности выигрыша особого не будет. Единственное, что можно было-бы подсократить, так это $v->first_name ... $v->last_name убрать в отдельный метод.

        Хотя, конечно, в столь простом случае можно было написать и по другому.
        Ответить
        • Тут разве что вместо 6-й строки вставить перед 4-й:
          if(strlen($userList)) $userList .= ", ";

          (и убрать . ", " в 4-й).

          Но это частично дело вкуса.
          Ответить
      • Раз уж спор зашёл о читабельности кода, то лучшим аргументом в пользу того, что этот код может быть читабельнее - это сам код. Предложите лучше вариант.
        Ответить

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

Где здесь C++, guest?!

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


    8