这是 var_dump:
object(stdClass)#27 (8) {
["SETTING_ID"]=> string(2) "25"
["SETTING_SOURCE"]=> string(2) "XV"
["SETTING_FLEET"]=> string(3) "313"
["SETTING_EXAM"]=> string(1) "A"
["SETTING_HIDE"]=> string(1) "0"
["SETTING_THRESHOLD"]=> string(1) "0"
["SETTING_COUNT"]=> string(8) "POSITIVE"
["SETTING_USAGE"]=> string(7) "MILEAGE"
}
我正在测试的变量是 SETTING_HIDE。这是使用 Code igniter 框架从 MySQL 中提取的。我不知道这是否只是我在工作了相当长的一天后变胖了还是什么,但无论变量持有什么值,任何针对它的 if 语句都会返回 true,即使类型转换为布尔值或直接字符串比较,即。==“0”或==“1”。
有谁有一双新鲜的眼睛在乎让我觉得很傻!?!:)
只是为了澄清:
尝试了以下方法:
if($examSetting->SETTING_HIDE == "1") { $showOnABC = "checked=\"checked\""; }
if((bool)$examSetting->SETTING_HIDE) { $showOnABC = "checked=\"checked\""; }
if($examSetting->SETTING_COUNT == "POSITIVE") further on in my code works perfectly.