TGViewer
Пых Пых @phpyh · 7.82K subscribers
Post #244 6.91K
👿 Антийода-условия и RTFM

Некоторое время назад я задумался, насколько реально нужны условия Йоды, которые мы тогда по инерции практиковали на проекте.

Рассуждение следующее. Условия Йоды — это способ защитить ногу от пули при использовании присваивания в условиях. Решая надуманную проблему, мы в итоге получаем двукратное ухудшением читабельности кода: и спрятанное в if присваивание, и неестественное условие. Куда правильнее просто запретить присваивания в условиях, а сами условия оформлять как душа бизнес-логика подсказывает.

В итоге мы на проекте отказались от Звёздных войн, и я добавил строчку 'yoda_style' => false в .php_cs.dist, то есть полностью выключил правило.

И только сегодня, спустя 7 месяцев, @EtherLord выяснил, что это правило можно включить в режиме "антийоды": 'yoda_style' => ['equal' => false, 'identical' => false, 'less_and_greater' => false]. Тогда фиксер null !== $value будет преобразовывать в $value !== null и т.д.

RTFM, Валентин 😅

https://cs.symfony.com/doc/rules/control_structure/yoda_style.html
Wikipedia RTFM English phrase initialism
  • 👍 3
More from @phpyh
  1. Sep 30, 2026🍺 BeerPHP AI Moscow Кажется, «неделя PHP» потихоньку превращается в месяц PHP. 😅 Будет 2…
  2. Sep 28, 2026Запустили Пыхник и неделю PHP! Залетайте на первый открытый доклад от Дмитрия Dantes про к…
  3. Sep 15, 2026Сейчас один человек с AI может выполнять работу целого IT-отдела. Только хуёво
  4. Sep 12, 2026Спасибо за заявки! Всем напишу в понедельник. Осталось 1 место.
  5. Sep 11, 2026Хардкорный курс асинхронного PHP https://hardcourse.ru/php/async
  6. Sep 11, 2026Ещё полчасика надо — сайт готов, расписываю программу! 🙏
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →