これは 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.