php - 将字符串 'true' 或 'false' 转换为整数 '1' 或 '0'

标签 php string boolean

我想将字符串变量 'true' 或 'false' 转换为 int '1' 或 '0'。
为了实现这一点,我正在尝试这样

(int) (boolean) 'true' //gives 1
(int) (boolean) 'false' //gives 1 but i need 0 here
我现在可以使用像 array('false','true'); 这样的数组
或使用 if($myboolean=='true'){$int=1;}但这种方式效率较低。
有没有像这样更有效的方法 (int) (boolean) 'true' ?
我知道有人问过这个问题。但我还没有找到答案

最佳答案

字符串总是计算为 boolean 真,除非它们的值被 PHP 视为“空”。

根据您的需要,您应该考虑将 filter_var() 与 FILTER_VALIDATE_BOOLEAN 标志一起使用。

(int)filter_var('true', FILTER_VALIDATE_BOOLEAN);
(int)filter_var('false', FILTER_VALIDATE_BOOLEAN);

关于php - 将字符串 'true' 或 'false' 转换为整数 '1' 或 '0',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46870479/

相关文章:

php - 遍历日期范围内的所有月份?

php - 在 php 中将年添加到今天的日期

php提交时变量值加1

c++ - 将 void* 转换为 std::string

ruby-on-rails - 如何检查字符串是否为有效日期

Java 删除 .0 的所有大小写

json - Perl: JSON::XS 是否可以强制 boolean 解码为 1/0?

java - Java中的随机 boolean 二维数组总是返回 "false"

java - 为什么此代码会导致 "illegal start of expression"异常?

php - 使用 PHPUnit 测试 error_log