PHP null coalescing operator (??)
June 4, 2022 ‐ 1 min read
The null coalescing operator was introduced as one of the new features in PHP 7.0.
It provides you some syntactic sugar for setting fallback values in cases where a value is NULL. Before it was common to handle such cases with a ternary (... ? … : …) in combination with isset().
For example:
<?php
$quantity = isset($_POST['quantity']) ? $_POST['quantity'] : 0;
With the null coalescing operator we can write the above as follows:
<?php
$quantity = $_POST['quantity'] ?? 0;
If the first operand (value before the ??) exists and its value does not equal NULL then $quantity is set to this value. Otherwise $quantity is set to the second operand (value after the ??).