1

如果返回 boolean(false) 或结果,我如何检查 mysqli 查询?如果我尝试获取 num_rows 我会收到 php 错误,因为我试图将非对象作为对象访问。但我需要检查这一点,因为如果它是假的,我必须设置一个变量,如果它不是得到查询的结果。

我的查询如下所示:

<?php
$q = "SELECT `id` FROM `table` ORDER BY `id` DESC LIMIT 0, 1";
$res = mysqli->query($q);
?>
4

2 回答 2

3

您需要使用===还检查参数类型的运算符:

$q = "select ,....";
$res = mysqli->query( $q );

if( $res !== false ) { 
   // query ok
} else {
   // query failed
}
于 2012-12-03T19:24:57.717 回答
1

要知道变量是否设置为 false,您可以使用

if($res === false){//strictly false, no 0 or ''
   //do something
}

在这种情况下,您可以只说要显示错误以更正它:

$res = mysqli->query($q) or exit mysqli_error();
于 2012-12-03T19:26:59.213 回答