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

    +160.1

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    class Company extends BaseCompany {
    //...
        public function setName($v){
            $this->setName(String::mb_ucfirst($v));
        }
    //...
    }

    Мегаметодика переопределения сеттеров. Symfony, Propel.

    Запостил: guest, 29 Января 2009

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

    • Говногость:
      Бгг. Рекурсия. Бесконечная.
      Ответить
    • более того
      рекурсия, убивающая апач
      Ответить
    • страйкер:
      жепь
      Ответить
    • Проходим:
      Ну и? Типичная ошибка, которую многие совершают.

      Всего лишь заменить
      $this->setName(String::mb_ucfirst($v));
      на
      parent::setName(String::mb_ucfirst($v));

      находится при первом же тестировании класса.

      Неужели не видно разницы между говно/быдлокодом и кодом с ошибками? Или начнём сюда постить все найденные баги?

      P.S. А код нормальный.
      Ответить
    • автор этого говна:
      Мы вчетвером два часа искали, где косяк. Для того, чтобы его найти, потребовалось эсвээн-ревертом пройтись по всем ревизиям, начиная с последней рабочей. Когда нашли, смеялись громко и долго. И первая мысль, которая возникла - на говнокод, срочно :-)
      Ответить
    • офигевающий с похапешников:
      >Мы вчетвером два часа искали, где косяк.

      Ну и идиоты - достаточно аттачнуться gdb-ой на зациклившийся php и посмотреть backtrace. "Веб-программистам" это, правда, ниасилить наверное.
      Ответить

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