summaryrefslogtreecommitdiffhomepage
path: root/php.html.markdown
diff options
context:
space:
mode:
authorMichele Orselli <mo@ideato.it>2015-10-02 18:24:45 +0200
committerMichele Orselli <mo@ideato.it>2015-10-02 18:24:45 +0200
commit0ad95b119d1f0135bf3a9fd55cebf24d63692c11 (patch)
tree9bb23bc7d68a7515d784d3d3c7220849b095e8a9 /php.html.markdown
parent4a3d5214303fc89f86f2173cfd953829ceba785e (diff)
adds some new php operators
Diffstat (limited to 'php.html.markdown')
-rw-r--r--php.html.markdown20
1 files changed, 20 insertions, 0 deletions
diff --git a/php.html.markdown b/php.html.markdown
index 52ea2a95..53be5391 100644
--- a/php.html.markdown
+++ b/php.html.markdown
@@ -215,6 +215,14 @@ assert($a !== $d);
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.
$integer = 1;
@@ -264,6 +272,18 @@ if (false) {
// ternary operator
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;
if ($x === '0') {
print 'Does not print';