将方法与True进行比较

时间:2016-09-10 16:02:00

标签: php mysql mysqli

我对此代码有疑问。

$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进行比较?

1 个答案:

答案 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中了解详情。