What is the best practice for handling a situation where a PHP function expects an array but may receive a single string instead?

When a PHP function expects an array but may receive a single string instead, the best practice is to check the input data type and convert the string into an array if necessary. This can be done by using the `is_array()` function to determine if the input is already an array, and if not, converting the string into an array using `explode()` or `str_split()`.

// Check if input is an array, if not, convert string to array
function processInput($input) {
    if (!is_array($input)) {
        $input = explode(',', $input); // Convert comma-separated string to array
    }
    
    // Proceed with processing the array
    // ...
}

// Example usage
$input = "apple,banana,orange";
processInput($input);