adds some new php operators

This commit is contained in:
Michele Orselli 2015-10-02 18:24:45 +02:00
parent 4a3d521430
commit 0ad95b119d

View File

@ -215,6 +215,14 @@ assert($a !== $d);
assert(1 === '1'); assert(1 === '1');
assert(1 !== '1'); assert(1 !== '1');
// spaceship operator since PHP 7
$a = 100;
$b = 1000;
echo $a <=> $a; // 0 since they are equal
echo $a <=> $b; // -1 since $a < $b
echo $b <=> $a; // 1 since $b > $a
// Variables can be converted between types, depending on their usage. // Variables can be converted between types, depending on their usage.
$integer = 1; $integer = 1;
@ -264,6 +272,18 @@ if (false) {
// ternary operator // ternary operator
print (false ? 'Does not get printed' : 'Does'); print (false ? 'Does not get printed' : 'Does');
// ternary shortcut operator since PHP 5.3
// equivalent of "$x ? $x : 'Does'""
$x = false;
print($x ?: 'Does');
// null coalesce operator since php 7
$a = null;
$b = 'Does print';
echo $a ?? 'a is not set'; // prints 'a is not set'
echo $b ?? 'b is not set'; // prints 'Does print'
$x = 0; $x = 0;
if ($x === '0') { if ($x === '0') {
print 'Does not print'; print 'Does not print';