我似乎无法弄清楚这段 PHP 代码有什么问题:
$sql = $db->prepare("SELECT EXISTS(SELECT 1 FROM profile WHERE uid = ?)"); $p_already_exists = $sql->execute([$_SESSION['uid']]);
我正在运行 sqlite3 PDO 模块,无论“uid”是否在数据库中,$p_already_exists 始终被分配为 1。如果它不在数据库中,我希望它为 0,如果数据库中至少有一条记录,则为 1。
我已经仔细检查过,回显 $_SESSION['uid'] 为我提供了与数据库中的 uid (TEXT) 相同的值。
有谁知道为什么这对我不起作用?归根结底,我只是在寻找一种返回布尔值的有效方法(这就是为什么我不使用 COUNT 的原因)。
大话西游666