PHP比较没有返回正确的结果

时间:2014-03-17 18:44:29

标签: php sql pdo

我正在查找SQL表中的值。该表返回值" text",但是当我对它进行比较时,我得到了错误。这有什么原因会导致错误吗?

while($row = $stmt->fetch(PDO::FETCH_ASSOC)){

    $valType = $row['valType']; //Result: "text"

    if("text" === $valType) {
        $result = "true";
    } else {
        $result = "false";
    }
    echo $result; //Result: "false"
}

感谢@Rocket Hazmat的帮助,我通过使用var_dump($ row [' valType'])找到了我的问题。这是一个区分大小写的问题。

1 个答案:

答案 0 :(得分:0)

在您的代码示例中,$ valType不是" text",它是其他内容。见下面的例子。

<?php
    $valType = "text";
    if("text" === $valType) {
        $result = "true";
    } else {
        $result = "false";
    }
    echo $result; //Prints "true"
?>

这可以缩短为:

<?php
    $valType = "text";
    echo ("text" === $valType ? "true" : "false"); //Prints "true"
?>