Моя база данных имеет несколько логических значений. После того, как я сохранил базу данных, логические значения были преобразованы в tinyint (1). Я думаю, это потому, что нужно просто сохранить 1 или 0.
Однако теперь у меня проблема со сравнением значения в PHP. Я сохранил tinyint в массив без какого-либо преобразования кода. Массив содержит несколько записей, представляющих собой текст и дату, и несколько записей с логическими значениями, например:
array[0] is '09:45:00'
array[1] is '10:45:00'
array[2] is 1
array[3] is 0
array[4] is 0
array[5] is 1
array[6] is 'active'
Теперь, если я перебираю массив, я хочу проверить, является ли значение временем, текстом или true / false.
Проверка, является ли запись истинной, всегда будет возвращать true, потому что ни одна запись не является пустой. Проверка, является ли запись 1 или 0, работает для логического значения, но когда я проверяю, 'active' == 0, она возвращает true. Почему это так и как я могу получить ложь, если сравниваю строку с tinyint?
Сравнение с === не работает ни в коем случае.