The PHP Null Coalescing Operator is a powerful feature that helps simplify code and make it more efficient.
In this article, we will explore what the operator is, how it works, and why it’s so useful.

How the Null Coalescing Operator Works
Firstly, let’s define what the Null Coalescing Operator is. It is a shorthand operator for checking if a variable is null or not.
It is represented by two question marks (??
). The operator returns the value of the left-hand operand if it exists and is not null. If it is null, the operator returns the value of the right-hand operand.
Now that we know what the operator is, let’s dive into how it works. To understand this, let’s consider an example:
<?php
$username = $_GET['username'] ?? 'Guest';
?>
In this example, we are trying to retrieve the value of the username
parameter from the $_GET
array. If the username
parameter exists and is not null, it will be assigned to the $username
variable. However, if the username
parameter is null or does not exist, the value ‘Guest’ will be assigned to $username
. This is because of the Null Coalescing Operator.
The Null Coalescing Operator can also be chained together to provide default values for multiple variables. Here’s an example:
<?php
$username = $_GET['username'] ?? $_POST['username'] ?? 'Guest';
?>
In this example, we are trying to retrieve the value of the username
parameter from the $_GET
array. If it is null or does not exist, we try to retrieve the value from the $_POST
array. If this value is also null or does not exist, the value ‘Guest’ is assigned to $username
.
Using the Null Coalescing Operator with Arrays and Objects
The Null Coalescing Operator is particularly useful when dealing with arrays or objects. Here’s an example:
<?php
$person = [
'name' => 'John',
'age' => null,
'country' => 'USA'
];
$age = $person['age'] ?? 'Unknown';
?>
In this example, we are trying to retrieve the value of the age
key from the $person
array. However, this key has a value of null. Using the Null Coalescing Operator, we can assign the value ‘Unknown’ to the $age
variable instead of null.
Handling Null Values in Functions with the Null Coalescing Operator
Moveover, the Null Coalescing Operator also works with functions. Let’s consider an example:
<?php
function getUserName() {
return null;
}
$username = getUserName() ?? 'Guest';
?>
In this example, we are calling the getUserName()
function, which returns null. Using the Null Coalescing Operator, we assign the value ‘Guest’ to $username
instead of null.
Wrapping UP
In conclusion, the PHP Null Coalescing Operator is a powerful feature that simplifies code and makes it more efficient.
The Null Coalescing Operator proves especially useful when dealing with arrays or objects, and one can chain it together to provide default values for multiple variables.
It also works with functions, allowing us to handle null values in a more elegant way. With the help of the Null Coalescing Operator, we can write cleaner, more readable, and more maintainable code.
Thank you for reading, to lean more detail visit PHP manual.