Сокращенное выражение для оператора if ($ a == $ b и $ a == $ c) в переполнении стека

Недавно я выложил вопрос о if ( $a == $b or $a == $c ) выражение. Теперь я хочу знать, есть ли также сокращенное выражение для этого кода:

if ( $a == $b && $a == $c ) { /*statement*/ }

Этот код можно прочитать как «если $ a равно $ b, а $ a равно $ c».

Есть ли более короткий код, который можно прочитать так:

if ($ a равно ($ b и $ c)) {/ * оператор * /}

4

Решение

Поскольку вы проверяете, равен ли $ a $ b и $ c, это логически приводит к тому, что $ b равно $ c, я не знаю, насколько это будет короче, но если вы хотите быстро проверить, все ли предложенные значения то же самое вы можете создать их массив и вызвать array_unique. Если длина полученного массива равна 1, то все они равны друг другу. Я полагаю, что это было бы проще, если бы у вас был большой набор значений, так как синтаксис может скрыть ваши намерения.

2

Другие решения

Я нашел ответ после экспериментов, пока мой вопрос еще не опубликован:

if ( $a == ( $b & $c ) ) { /*statement*/ }

Я просто хочу поделиться этим .. (И нет, я разрабатываю тему WordPress, и это непреднамеренно!)

0

По вопросам рекламы [email protected]