Почти во всех языках программирования есть логический тип данных, с помощью которого можно работать с булевыми значениями типа ДА/НЕТ или ИСТИНА/ЛОЖЬ (TRUE/FALSE). Хотя раньше спокойно обходились и без этого. Например, в чистом С такого типа не было. Да и в некоторых других языках такого типа тоже нет, а вместо этого используются числа. Например, 0 можно считать логическим нулём, а любое другое число - логической единицей.
PHP, как всегда, идёт своим путём. И здесь для работы с логическими значениями можно использовать как ключевые слова, так и числа и значения других типов. То есть некоторые значения PHP определяет как истинные, а другие - как ложные. И это придётся запоминать или держать где-то краткую памятку (например, можно добавить эту статью в закладки))).
Истинность или ложность проверяется оператором if (значение). Также результат какого-то логического выражения можно присвоить переменной.
В РНР следующие значения эквивалентны false (являются ложными):
- Ключевое слово false
- Целое число 0
- Число с плавающей запятой 0.0
- Пустая строка ("") и строка, содержащая "0"
- Массив, где 0 элементов
- Объект без значений и функций
- Значение NULL
Всё, что отличается от того, что описано выше, является истиной (true). Например, -1 - это true, и 1 - это тоже true. И даже 0.00001 - это тоже true. И " " - это тоже true, потому что это не пустая строка, а строка, которая содержит пробел.
Пример:
Также вы можете воспользоваться функцией is_bool() для проверки, является ли переменная логической. И, надеюсь, все понимают, что пустая строка (""), хотя имеет значение false при сравнении в логических выражениях, не является логическим типом (это касается, конечно, не только строк).
Вот такой он забавный, язык PHP…
На этом всё. Подписывайтесь на канал, чтобы ничего не пропустить.