将字符串'true'或'false'转换为整数'1'或'0'。
将字符串'true'或'false'转换为整数'1'或'0'。
我想将字符串变量'true'或'false'转换为整数'1'或'0'。
为了实现这一目标,我尝试了以下方法:
(int) (boolean) 'true' //得到1 (int) (boolean) 'false' //得到1,但我需要0
我知道可以使用数组来实现,例如array('false','true');
或使用if($myboolean=='true'){$int=1;}
但这种方式效率较低。
是否有另一种更高效的方式,类似于(int) (boolean) 'true'
?
我知道这个问题已经被问过了,但我还没有找到答案
'将字符串“true”或“false”转换为整数“1”或“0”的问题是由于字符串“false”为真值引起的。这就是为什么 (int) (boolean) "false"
返回1而不是0。如果您想从字符串中获取一个“false”布尔值,可以传递一个空字符串 (int) (boolean) ""
。更多信息请参见这里。
这很有帮助,但不是一个解决方法,因为我有真或假的数据。'
问题的原因:字符串“false”被视为真值,导致将其转换为布尔值时返回1而不是0。
解决方法:如果想要将字符串“false”转换为整数0,可以传递一个空字符串。