PHP - 将 int 转换为布尔值

问题描述 投票:0回答:1

我想知道以这些方式将整数转换为布尔值是否是一个好主意。

我使用的是 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)

php type-conversion
1个回答
0
投票

嗨,我知道这已经很老了,但以防万一其他人像我一样偶然发现这个问题:

boolval($value)

根据提供的整数 $value 返回 true/false。

这通常是将 int 转换为 Bool 的最佳方法。

© www.soinside.com 2019 - 2024. All rights reserved.