На додаток до нових функцій, таких як підказка типу для скалярних типів даних або оптимізована продуктивність , PHP 7 також містить багато нових, корисних розширень мови. "Оператор космічного корабля" нарешті потрапив у світ PHP (програмісти Ruby та Perl знають це давно). \($a <=> $b\) повертає \(0\) тоді і тільки тоді, коли обидва операнди рівні, \(1\) якщо лівий більший, а \(-1\) інакше.
Відповідно, цей новий оператор відповідає функції signum \(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\) ).