What is the purpose of using array_unique in PHP and what are its limitations when working with multidimensional arrays?

When working with multidimensional arrays in PHP, the array_unique function can be used to remove duplicate values within each sub-array. However, it is important to note that array_unique only works on one-dimensional arrays. To remove duplicates in multidimensional arrays, a custom function needs to be implemented to iterate through each sub-array and remove duplicates.

// Function to remove duplicates in a multidimensional array
function array_unique_multidimensional($array) {
    foreach ($array as &$sub_array) {
        $sub_array = array_unique($sub_array);
    }
    return $array;
}

// Example usage
$multidimensional_array = array(
    array(1, 2, 3),
    array(2, 3, 4),
    array(3, 4, 5)
);

$unique_array = array_unique_multidimensional($multidimensional_array);
print_r($unique_array);