L'envoi d'une connexion PDO en tant que paramètre est en fait la seule façon sensée de le faire. Il est en effet bon de savoir que vous pourriez utiliser le global
mot-clé, mais la meilleure façon d'écrire du code qu'il est possible de maintenir est d'indiquer explicitement les dépendances, et indication de type
eux
function mailExists (PDO $pdo, $email) {
$sql = 'SELECT * FROM users WHERE email = :email';
$stmt = $pdo->prepare($sql);
$stmt->bindValue(':email', $email, PDO::PARAM_STR);
$stmt->execute();
return $stmt->rowCount() > 0;
}
if (mailExists($pdo, $email) {}
En savoir plus ici à propos de PDO et des déclarations préparées. Remarquez comment j'ai profité des paramètres nommés pour m'assurer qu'aucune injection sql n'est possible à partir de ce code.