phparraysrecursionmultidimensional-arrayis-empty

Check if a multidimensional array has any non-empty leaf nodes


How can I check an array recursively for empty content like this example:

Array
(
    [product_data1] => Array
        (
            [0] => Array
                (
                    [title] => 
                    [description] => 
                    [price] => 
                )

        )
    [product_data2] => Array
        (
            [0] => Array
                (
                    [title] => 
                    [description] => 
                    [price] => 
                )

        )

)

The array is not empty but there is no content. How can I check this with a simple function?


Solution

  • 
    function is_array_empty($InputVariable)
    {
       $Result = true;
    
       if (is_array($InputVariable) && count($InputVariable) > 0)
       {
          foreach ($InputVariable as $Value)
          {
             $Result = $Result && is_array_empty($Value);
          }
       }
       else
       {
          $Result = empty($InputVariable);
       }
    
       return $Result;
    }