我对此代码有疑问。
$sql = "INSERT INTO MyGuests (firstname, lastname, email)
VALUES ('John', 'Doe', 'john@example.com')";
if ($conn->query($sql) === TRUE) {
echo "New record created successfully";
} else {
echo "Error: " . $sql . "<br>" . $conn->error;
}
据我所知,$conn -> query()
调用附加到对象$conn
的方法query
。我们如何将方法与 ===True
进行比较?
最佳答案
来自查询命令文档:
Returns FALSE on failure. For successful SELECT, SHOW, DESCRIBE or EXPLAIN queries mysqli_query() will return a mysqli_result object. For other successful queries mysqli_query() will return TRUE.
换句话说,如果插入成功,它将返回TRUE
,否则返回FALSE
。所以我们将函数执行后的返回值与TRUE进行比较,看是否执行成功。
您可以将其重写为:
$query_sucessfully_executed = $conn->query($sql);
if ($query_sucessfully_executed) {
echo "New record created successfully";
} else {
echo "Error: " . $sql . "<br>" . $conn->error;
}
意思是一样的。我希望这能让事情变得更清楚。
您可以在 query documentation 中了解更多相关信息.
关于php - 将方法与 True 进行比较,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39427930/