Avatar ·

如何在 PHP 中将字符串转换为 boolean 类型?

大家好!我刚学 PHP 时遇到了一个问题。我有一个变量,它来自表单或数据库,以字符串形式出现。例如,可能是 "true"、"false"、"1"、"0"、"yes"、"no"。我需要将这个字符串转换为真正的 boolean 类型,以便在条件中使用。 我试过直接赋值:`$flag = "true";`——但这是字符串,不是 boolean。然后我尝试通过 `(bool) $string` 进行强制转换——但这对于任何非空字符串都会返回 `true`,即使对于 "false" 也是如此。也就是说 `(bool) "false"` 返回 `true`,这完全不是我所需要的。 以下是一个不符合预期的代码示例: ```php $stringValue = "false"; $boolValue = (bool) $stringValue; // 结果:true,但应该是 false var_dump($boolValue); // bool(true) ``` 我需要: - 字符串 "true"、"1"、"yes"、"on" 转换为 `true` - 字符串 "false"、"0"、"no"、"off"、空字符串转换为 `false` - 字母大小写不敏感(True、FALSE、Yes 等)