我不确定是否有类似的问题,因为我不确定要搜索什么,但无论如何。
在我进行查询(有 1 个表)之后,有两种方法可以检查是否返回了一行:
$a = $members->prepare("select userid from users where userid = ?");
$a->bind_param('s', $_SESSION['token']);
$a->execute();
$a->store_result();
if ($a->num_rows == 1) {
// do something
}
或者:
$b = $members->prepare("select userid from users where userid = ?");
$b->bind_param('s', $_SESSION['token']);
$b->execute();
$b->bind_result($uid);
$b->fetch();
if (isset($uid)) {
// do something
}
哪一个最好用于查看是否返回了一行?我认为因为 num_rows 是为此目的而存在的,所以应该使用它,但是您必须存储结果集,所以我不确定,谢谢。