PHP 7 и оператор космического корабля

В дополнение к новым функциям, таким как подсказка типов для скалярных типов данных или оптимизированная производительность , PHP 7 также содержит множество новых полезных расширений языка. «Оператор космического корабля» наконец-то попал в мир PHP (программисты на Ruby и Perl знали его давно). \($a <=> $b\) возвращает \(0\) тогда и только тогда, когда оба операнда равны, \(1\) если левый больше, и \(-1\) противном случае.


Соответственно, этот новый оператор соответствует сигнум-функции \(sgn(xy)\) известной из математики. Это означает, что существующие операторы сравнения также можно интерпретировать с использованием нового синтаксиса.:

\($a < $b\)\(($a <=> $b) === -1\)
\($a <= $b\)\(($a <=> $b)\) !\(== 1\)
\($a == $b\)\(($a <=> $b) === 0\)
\($a\) !\(= $b\)\(($a <=> $b)\) !\(== 0\)
\($a >= $b\)\(($a <=> $b)\) !\(== -1\)
\($a > $b\)\(($a <=> $b) === 1\)

Применяются те же правила, что и для операторов сравнения (например, \([1,2,3] <=>[1,2,1]\) равно \(1\) ).

Назад