Важно понять, что значение будет из базы данных, если предполагается, что оно равно false
.
Если база данных возвращает "false"
, и вы проверяете $val == true
и $val == "true"
только последние будут давать правильные результаты.
Возможно, вам придется обратиться к таблицам сравнения типов php , чтобы убедиться, что вы понимаете, с чем вы проверяете.
Кроме того, есть ли вероятность того, что база данных может вернуть одно из следующих значений?
"true"
"True"
"TRUE"
"TrUe"
Просто нормализуйте или санируйте значения базы данных (в идеале, храните двоичные значения в логическом поле, чтобынеобходимо.