我想知道以这些方式将整数转换为布尔值是否是一个好主意。
我使用的是 PHP 7.4
对整数取反两次(这对我来说似乎不是最佳选择)
$x = 123;
$bool = !!($x);
或者当我将整数作为参数传递并告诉它接收布尔值时。
在这种情况下,PHP 自动将整数转换为布尔值
负数 => true
0 => 假
正数 => true
function abc(bool $required = true) {
var_dump($required);
}
abc(-123); // bool(true)
abc(0); // bool(false)
abc(123); // bool(true)
嗨,我知道这已经很老了,但以防万一其他人像我一样偶然发现这个问题:
boolval($value)
根据提供的整数 $value 返回 true/false。
这通常是将 int 转换为 Bool 的最佳方法。