Логических операторов или vs || (двойной канал) в php - программирование

Логических операторов или vs || (двойной канал) в php

Я всегда использовал || (двойной канал) для if (($a == $b) || ($a == $c)) { } и or для do_this() or do_that();.

Почему бы не if (($a == $b) or ($a == $c)) { } или do_this() || do_that();?

Есть ли какая-нибудь причина использовать любой из этих двух логических операторов, или это только личное предпочтение?

То же самое относится к && vs and, в котором я использую только &&.

4b9b3361

Ответ 1

Операторы с выраженным выражением and и or имеют более низкий приоритет, даже ниже, чем назначение, поэтому вы можете использовать их, чтобы избежать необходимости писать круглые скобки во многих местах. Например:

$d=$a||$b and $c эквивалентно ($d=$a||$b) && $c

Они также более читабельны во многих контекстах.