我对此代码有疑问。
$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()
调用附加到对象query
的方法$conn
。我们如何将方法与===True
进行比较?
答案 0 :(得分:1)
来自查询命令文档:
失败时返回FALSE。成功的SELECT,SHOW,DESCRIBE或 EXPLAIN查询mysqli_query()将返回一个mysqli_result对象。对于 其他成功的查询mysqli_query()将返回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中了解详情。