What are some best practices for handling user input, such as GET variables, in PHP scripts to ensure consistent functionality?

When handling user input in PHP scripts, it is important to sanitize and validate the input to prevent security vulnerabilities like SQL injection or cross-site scripting attacks. One common best practice is to always use functions like `filter_input` or `htmlspecialchars` to sanitize user input before using it in your script. Additionally, validating input against expected formats or ranges can help ensure consistent functionality.

// Example of sanitizing user input using filter_input
$userInput = filter_input(INPUT_GET, 'user_input', FILTER_SANITIZE_STRING);

// Example of validating user input against expected format
if (preg_match("/^[a-zA-Z0-9]+$/", $userInput)) {
    // Valid input, proceed with processing
} else {
    // Invalid input, handle error accordingly
}