What is the best practice for validating and processing form data in PHP before sending it via email?

When validating and processing form data in PHP before sending it via email, it is important to sanitize and validate the input to prevent security vulnerabilities such as SQL injection and cross-site scripting attacks. One common approach is to use PHP's filter_var() function to sanitize and validate input data before sending it in an email.

// Retrieve form data
$name = $_POST['name'];
$email = $_POST['email'];
$message = $_POST['message'];

// Sanitize and validate input data
$name = filter_var($name, FILTER_SANITIZE_STRING);
$email = filter_var($email, FILTER_VALIDATE_EMAIL);
$message = filter_var($message, FILTER_SANITIZE_STRING);

// Check if email is valid
if (!$email) {
    echo "Invalid email address";
    exit;
}

// Send email
$to = "recipient@example.com";
$subject = "Message from $name";
$body = "From: $name\nEmail: $email\n\n$message";

// Send email
if (mail($to, $subject, $body)) {
    echo "Email sent successfully";
} else {
    echo "Failed to send email";
}