PHP 7 și Operatorul navei spațiale

În plus față de funcții noi, cum ar fi sugestii de tip pentru tipuri de date scalare sau performanțe optimizate , PHP 7 aduce, de asemenea, multe extensii de limbaj noi și utile. „Operatorul navei spațiale” a ajuns în sfârșit în lumea PHP (programatorii Ruby și Perl o știu de multă vreme). \($a <=> $b\) returnează \(0\) dacă și numai dacă ambii operanzi sunt egali, \(1\) dacă stânga este mai mare și \(-1\) caz contrar.


În consecință, acest nou operator corespunde funcției signum \(sgn(xy)\) cunoscută din matematică. Aceasta înseamnă că operatorii de comparație existenți pot fi de asemenea interpretați folosind noua sintaxă:

\($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\)

Se aplică aceleași reguli ca și pentru operatorii de comparație (de exemplu \([1,2,3] <=>[1,2,1]\) este egal cu \(1\) ).

Înapoi