What are the potential pitfalls of manipulating existing PHP functions like `mail()`?

Manipulating existing PHP functions like `mail()` can lead to unexpected behavior, security vulnerabilities, and potential conflicts with other parts of the codebase. To avoid these pitfalls, it's best to create a wrapper function that extends the functionality of `mail()` without directly modifying it. This wrapper function can add additional validation, logging, or security measures while still utilizing the core functionality of `mail()`.

function custom_mail($to, $subject, $message, $headers = []) {
    // Additional validation, logging, or security measures can be added here
    return mail($to, $subject, $message, $headers);
}