How can PHP developers ensure the security of user input data in SQL queries?

To ensure the security of user input data in SQL queries, PHP developers can use prepared statements with parameterized queries. This approach helps prevent SQL injection attacks by separating the SQL query logic from the user input data, thus eliminating the risk of malicious input altering the query structure.

// Establish a database connection
$pdo = new PDO('mysql:host=localhost;dbname=my_database', 'username', 'password');

// Prepare a SQL statement with a parameterized query
$stmt = $pdo->prepare('SELECT * FROM users WHERE username = :username');

// Bind the user input data to the prepared statement
$stmt->bindParam(':username', $_POST['username']);

// Execute the query
$stmt->execute();

// Fetch the results
$results = $stmt->fetchAll();