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

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
if($record->getTitle()) {
  $request->setAttribute('title', $record->getTitle());
}else{
  $request->setAttribute('title', $record->getName());
}

определение существования метода у объекта $record

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

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

  • Ознакомьтесь сначала с ООП в PHP. Таким способом не определить существование метода у объекта. Если метода нет, то вывалится фатал.
    Ответить
  • Чо за бред? Просто у бъекта record может либо быть свойство title - и тогда нужно использовать его, либо не быть - и тогда использовать св-во name.
    Аффтар поста, учи матчасть
    Ответить
    • $title = $record->getTitle() ? $record->getTitle() : $record->getName();
      $request->setAttribute(\'title\', $title);
      Ответить
      • Думаю автор просто не знал про конструкцию \"? :\"
        Имхо, не такой уж и говнокод.
        Ответить
        • Не знаю, мне кажется, использовать if-then-else даже нагляднее.
          Ответить
        • ну на крайняк так, чтобы избежать копипасты.
          но не критично — согласен. думаю, достаточно часто в рабочих проектах такое встречается.
          if($record->getTitle()) {
          $title = $record->getTitle();
          }else{
          $title = $record->getName();
          }
          $request->setAttribute('title', $title);
          Ответить
          • хе. или даже так:
            $title = $record->getTitle();
            if(!$title) {
            $title = $record->getName();
            }
            $request->setAttribute('title', $title);
            единственный вариант, при котором метод getTitle не вызывается дважды)
            Ответить

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

Я, guest, находясь в здравом уме и твердой памяти, торжественно заявляю:

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


    8