函数返回int而不是bool

时间:2016-02-16 20:17:29

标签: php function int boolean

我有一个非常简单的功能来检查数据库中是否存在电子邮件。它应该返回truefalse,但它会返回10

function isUniqueEmail($email){
    global $database;
    $user_email = $database->prepare("SELECT * FROM users WHERE email=:email LIMIT 1");
    $user_email->execute(array('email' => $email));
    return ($user_email->rowCount() === 0) ? true : false;
}

它可能是什么?

2 个答案:

答案 0 :(得分:2)

使用print_r时,它不会像您想象的那样打印(bool)值。它将它转换为1表示真实,甚至不变为虚假。要检查是否使用var_dump。所以是的,你的函数返回一个布尔值,但要检查变量的类型和值,请使用var_dump

答案 1 :(得分:1)

正如DataHerder已经指出的那样,问题的原因很可能是一个布尔值,当你回显它时它会显示为一个整数。 这是一个 example of that