What are the best practices for handling form data submitted via POST method in PHP?

When handling form data submitted via POST method in PHP, it is important to sanitize and validate the input to prevent security vulnerabilities such as SQL injection or cross-site scripting attacks. One common best practice is to use PHP's filter_input() function to retrieve and validate form data before processing it further.

// Retrieve and sanitize form data submitted via POST method
$username = filter_input(INPUT_POST, 'username', FILTER_SANITIZE_STRING);
$email = filter_input(INPUT_POST, 'email', FILTER_SANITIZE_EMAIL);

// Validate the input data
if (!filter_var($email, FILTER_VALIDATE_EMAIL)) {
    // Handle invalid email address
    echo "Invalid email address";
} else {
    // Process the form data
    // Insert data into database, send email, etc.
}