What are the best practices for handling user input from query variables in PHP to prevent vulnerabilities?
To prevent vulnerabilities when handling user input from query variables in PHP, it is essential to sanitize and validate the input to prevent malicious code injection, SQL injection, and other security threats. One way to achieve this is by using functions like htmlspecialchars() to encode special characters and filter_var() to validate input against a specific filter.
// Sanitize and validate user input from query variables
$user_input = $_GET['input'] ?? ''; // Get user input from query variable
$sanitized_input = htmlspecialchars($user_input); // Sanitize input to prevent XSS attacks
$validated_input = filter_var($sanitized_input, FILTER_SANITIZE_STRING); // Validate input as a string