Изпращането на PDO връзка като параметър всъщност е единственият разумен начин да направите това. Наистина е добре да знаете, че можете да използвате global
ключова дума, но оптималният начин за писане на код, който е възможно да се поддържа, е изрично посочване на зависимости и подсказване на типа
тях
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) {}
Прочетете повече тук относно ЗНП и изготвени становища. Забележете как се възползвах от наименуваните параметри, за да гарантирам, че не е възможно sql инжектиране от този код.