2016-06-29 3 views
0

Я немного смущен, как работает функция php boolval. Рассмотрим следующийПочему boolval (false) возвращается пустым в php?

<?php echo boolval(true); // prints 1

И контраст с

<?php echo boolval(false); // prints nothing?

Почему я не получаю обратно либо истина/ложь? И почему boolval(false) ничего не возвращает?

Я столкнулся с этой проблемой, пытаясь разобрать для логического аргумента. Какова правильность извлечения значения bool от , если нет с этой функцией?

+2

'var_dump (boolval (ложь)),' ' var_dump (!! $ ARGV),' – Rizier123

+0

Или просто 'эхо ложь;' – PeeHaa

ответ

1

После примеров в документации, это было бы так, чтобы показать логические значения:

echo 'false: '.(boolval(false) ? 'true' : 'false')."\n"; 

См: http://php.net/manual/en/function.boolval.php

Руководство также говорит:

истинное значение булева преобразуется в строку «1». Boolean FALSE: преобразован в "" (пустая строка). Это позволяет преобразовать обратно и между булевыми и строковыми значениями.

См: http://php.net/manual/en/language.types.string.php

1

С php manual

булевой истинное значение преобразуется в строку "1". Boolean FALSE: преобразован в "" (пустая строка). Это позволяет преобразовать обратно и между булевыми и строковыми значениями.

использование

echo $boolres ? 'true' : 'false'; 
Смежные вопросы