繁体   English   中英

PHP比较未返回正确结果

[英]PHP comparison is not returning correct result

我在SQL表中查找值。 该表返回值“ text”,但是当我对其进行比较时,我得到了false。 是否有原因会返回假?

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'])找到了我的问题。 这是一个区分大小写的问题。

在您的代码示例中,$ 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"
?>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM