Open In App

How to avoid undefined offset error in PHP ?

The Offset that does not exist in an array then it is called as an undefined offset. Undefined offset error is similar to ArrayOutOfBoundException in Java. If we access an index that does not exist or an empty offset, it will lead to an undefined offset error.
Example: Following PHP code explains how we can access array elements. If the accessed index is not present then it gives an undefined offset error.
 




<?php 
    
// Declare and initialize an array
// $students = ['Rohan', 'Arjun', 'Niharika']
$students = array(
    0 => 'Rohan',
    1 => 'Arjun',
    2 => 'Niharika'
);
   
// Rohan 
echo $students[0];
  
// ERROR: Undefined offset: 5
echo $students[5];
  
// ERROR: Undefined index: key
echo $students[key];
    
?>

Output: 
 



 



There are some methods to avoid undefined offset error that are discussed below: 
 




<?php 
    
// Declare and initialize an array
// $students = ['Rohan', 'Arjun', 'Niharika']
$students = array(
    0 => 'Rohan',
    1 => 'Arjun',
    2 => 'Niharika'
);
   
if(isset($students[5])) {
    echo $students[5];
}
else {
    echo "Index not present";
}
    
?>


Output:
Index not present




<?php 
    
// Declare and initialize an array
// $students = ['Rohan', 'Arjun', 'Niharika']
$students = array(
    0 => 'Rohan',
    1 => 'Arjun',
    2 => 'Niharika'
);
   
if(!empty($students[5])) {
    echo $students[5];
}
else {
    echo "Index not present";
}
    
?>


Output:
Index not present
  • array_key_exists() function for associative arrays: Associative array stores data in the form of key-value pair and for every key there exists a value. The array_key_exists() function checks whether the specified key is present in the array or not.
    Example:




    <?php 
    // PHP program to illustrate the use 
    // of array_key_exists() function
      
    function Exists($index, $array) { 
        if (array_key_exists($index, $array)) { 
            echo "Key Found"
        
        else
            echo "Key not Found"
        
      
    $array = array(
        "ram" => 25, 
        "krishna" => 10, 
        "aakash" => 20
    ); 
      
    $index = "aakash"
      
    print_r(Exists($index, $array)); 
    ?>
    
    


    Output:
    Key Found

    PHP is a server-side scripting language designed specifically for web development. You can learn PHP from the ground up by following this PHP Tutorial and PHP Examples.


  • Article Tags :