Wednesday, May 8, 2024
HomeLanguagesPhpWhat is the use of Null Coalesce Operator ?

What is the use of Null Coalesce Operator ?

PHP 7 introduced a null-coalescing operator with ?? syntax. This operator returns its first operand if its value has been set and it is not NULL, otherwise it will return its second operand. This operator can be used in a scenario where the programmer wants to get some input from the user and if the user has skipped the input, some default value has to be assigned to the variable.

Uses of Null Coalescing Operator:

  • It is used to replace the ternary operator in conjunction with the PHP isset() function.
  • It can be used to write shorter expressions.
  • It reduces the complexity of the program.
  • It does not throw any error even if the first operand does not exist.

Example: If the values of $name and $age are assigned then assigned values will be printed otherwise the default value which is provided in the expression will be assigned to these variables as values.

PHP




<?php
    
  echo 'Output when values are not Set'."\xA<br>";
  
  // Using ternary operator
  $name = isset($_GET['name']) ? $_GET['name'] : 'Default'
  echo 'Name : '.$name."\xA<br>";
  
  // Using Null Coalescing
  $age = $_GET['age'] ?? 'Default';   
  echo 'Age : ' .$age."\xA \xA<br><br>";
  
  echo 'Output when values are Set'."\xA<br>";
      
  $_GET['name']='GFG';
  $_GET['age']='18';
  
  // Using ternary operator
  $name = isset($_GET['name']) ? $_GET['name'] : 'Default'
  echo 'Name : '.$name."\xA<br>";
  
  // Using Null Coalescing
  $age = $_GET['age'] ?? 'Default'
  echo 'Age : ' .$age;
  
?>


Output

Output when values are not Set
Name : Default
Age : Default
 
Output when values are Set
Name : GFG
Age : 18

Nicole Veronica Rubhabha
Nicole Veronica Rubhabha
A highly competent and organized individual DotNet developer with a track record of architecting and developing web client-server applications. Recognized as a personable, dedicated performer who demonstrates innovation, communication, and teamwork to ensure quality and timely project completion. Expertise in C#, ASP.Net, MVC, LINQ, EF 6, Web Services, SQL Server, MySql, Web development,
RELATED ARTICLES

6 COMMENTS

  1. My brother suggested I might like this web site.
    He was entirely right. This post actually made my day.
    You can not imagine simply how much time I had spent for this info!
    Thanks!

  2. Pretty great post. I simply stumbled upon your weblog and wanted to say that I’ve truly enjoyed browsing your weblog posts.
    In any case I will be subscribing for your feed and I am
    hoping you write again very soon!

LEAVE A REPLY

Please enter your comment!
Please enter your name here

Most Popular

Recent Comments