PHP 7 og rumskibsoperatøren

Ud over nye funktioner, som f.eks. Typebetegnelse for skalar datatyper eller optimeret ydelse , bringer PHP 7 også mange nye, nyttige sprogudvidelser med sig. "Spaceship Operator" har endelig gjort det til en verden af ​​PHP (Ruby og Perl-programmører har kendt det i lang tid). \($a <=> $b\) returnerer \(0\) hvis og kun hvis begge operander er ens, \(1\) hvis den venstre er større og \(-1\) ellers.


Følgelig svarer denne nye operator til signumfunktionen \(sgn(xy)\) kendt fra matematik. Dette betyder, at eksisterende sammenligningsoperatører også kan fortolkes ved hjælp af den nye syntaks:

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

De samme regler gælder som for sammenligningsoperatorerne (f.eks. \([1,2,3] <=>[1,2,1]\) lig med \(1\) ).

Tilbage