What are the best practices for dynamically importing IDs into SQL queries in PHP?

When dynamically importing IDs into SQL queries in PHP, it is important to use prepared statements to prevent SQL injection attacks. This involves using placeholders in the query and binding the actual values to the placeholders. This ensures that the input is treated as data rather than executable SQL code.

// Assume $ids is an array of IDs to import dynamically
$ids = [1, 2, 3];

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

// Prepare the SQL query with a placeholder for the IDs
$stmt = $pdo->prepare("SELECT * FROM table WHERE id IN (".implode(',', array_fill(0, count($ids), '?')).")");

// Bind the IDs to the placeholders in the query
$stmt->execute($ids);

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

// Do something with the results
foreach ($results as $row) {
    echo $row['id'] . ' - ' . $row['name'] . '<br>';
}