Булев тип в PHP

Булево значение – основа практически каждого языка программирования. Несмотря на название, способное легко показаться непонятным, в обработке значений этого вида нет ничего слышного. Это касается и PHP, и многих других ЯП.

Описание

Скорее всего все, даже начинающие программисты, сталкивались с булевыми значениями, но, возможно, просто не знали, что скрывается за этим названием. Речь идёт о значениях вида true («истина») и false(«ложь»). Булев тип часто используется при проверках на соответствие определённых значений заданным критериям. Конечно, можно и присваивать числовые, строковые или даже ещё более «экзотические» в этом плане значения, но в этом нет смысла.

Булевы значения бывают только двух видов, они перечислены выше. Falseприсуждается даже тогда, когда это значение не объявлялось или переменная вовсе не существует (как и внутри конструкции if-elseif-else, так и в коде вовсе), поэтому следует учитывать этот момент: указывать false для переменной, если раньше ей не устанавливалось значение true, необязательно.

Для проверки на то, является ли значение переменной булевым, можно использовать функцию is_bool(). Она представлена ещё в PHP 4 и по-прежнему доступна в языке, как в первозданном виде: достаточно просто заключить имя переменной в скобки. Как итог, эта переменная тоже выведет булев тип: true (если значение будет булевым) или false(в противном случае). Если нужно использовать переменную с булевым значением внутри if-elseif-else, то стоит задействовать, как и практически всегда, оператор ==.

Примеры использования

Проверка в if-elseif-else

Обратите внимание: дописывать == trueнеобязательно (см. ниже).

<?

$var=true;

if($var==true){
echo»Выражение истинно»;
}else{
echo»Выражение ложно»;
}

# ИЛИ

if($var){
echo»Выражение истинно»;
}else{
echo»Выражение ложно»;
}

Перевод в число

Можно сконвертировать булево значение в число, используя (int).

<?

$bool=true;
$convert=(int)($bool);

echo$convert;# Результат: 1

Перевод в Булев

Чтобы сделать из числа значение вида Булев тип, можно использовать (bool). Обратите внимание, что можно использовать не только целые числа (integer) и десятичные дроби (float): особый тип NULL тоже приводится к false, как и пустые строки и некоторые другие данные (см. справку). Все числовые, но не равняющиеся нулю, даже отрицательные, значения приводятся к true.

<?

$int=123456789;
$convert=(bool)($int);
var_dump($convert);# Результат: true

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *