Enviar uma conexão PDO como parâmetro é, na verdade, a única maneira sensata de fazer isso. É realmente bom saber que você pode usar o
global
palavra-chave, mas a maneira ideal de escrever código que é possível manter é declarar explicitamente as dependências e dicas de tipo
eles 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) {}
Leia mais aqui sobre DOP e declarações preparadas. Observe como aproveitei os parâmetros nomeados para garantir que nenhuma injeção de sql seja possível a partir desse código.