What are the best practices for constructing and executing SQL queries in PHP to avoid syntax errors?

When constructing and executing SQL queries in PHP, it is important to properly escape and sanitize user input to prevent SQL injection attacks and syntax errors. One of the best practices is to use prepared statements with placeholders instead of directly inserting variables into the query string. This helps separate the SQL logic from the data, making the query more secure and less prone to errors.

// Example of using prepared statements to avoid syntax errors in SQL queries

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

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

// Bind the parameter to the placeholder
$stmt->bindParam(':username', $username, PDO::PARAM_STR);

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

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