Safe PDO query helper
PHP
<?php
declare(strict_types=1);
function fetch_all(PDO $pdo, string $sql, array $params = []): array
{
$stmt = $pdo->prepare($sql);
$stmt->execute($params);
return $stmt->fetchAll(PDO::FETCH_ASSOC);
}
$pdo = new PDO(
'mysql:host=127.0.0.1;dbname=app;charset=utf8mb4',
'app',
getenv('DB_PASSWORD') ?: '',
[
PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC,
PDO::ATTR_EMULATE_PREPARES => false,
]
);
$users = fetch_all($pdo, 'SELECT id, email FROM users WHERE active = ?', [1]);