概述
在平时写代码的时候经常会进行逻辑判断,当条件满足才去执行,最常用的就是用"=="
去对比两边的值了,而"=="
首先会将两边的值转换为相同的类型然后再进行对比,有的时候我们会将某个变量(或者其它)与TRUE/FALSE
进行对比,那么那些值为TRUE
哪些值为FALSE
呢?
之前有段时间也是对这个概念掌握地模糊,只是靠着感觉与调试去写代码,但这并不是长久之计,虽然最后也能完成任务但是较低了效率,增加了不必要的麻烦,在php手册中查了一下,将其记下,防止以后忘记。
要明确地将一个值转换成 boolean
,用 (bool)
或者 (boolean)
来强制转换。但是很多情况下不需要用强制转换,因为当运算符,函数或者流程控制结构需要一个 boolean
参数时,该值会被自动转换。
当转换为 boolean
时,以下值被认为是 FALSE
:
- 布尔值
FALSE
本身 - 整型值
0
(零) - 浮点型值
0.0
(零) - 空字符串,以及字符串
"0"
- 不包括任何元素的数组
- 特殊类型
NULL
(包括尚未赋值的变量
) - 从空标记生成的
SimpleXML
对象
所有其它值都被认为是 TRUE(包括任何资源 和 NAN)。 |
Warning -1 和其它非零值(不论正负)一样,被认为是 TRUE! |
<?php
var_dump((bool) "");
// bool(false)
var_dump((bool) 1);
// bool(true)
var_dump((bool) -2);
// bool(true)
var_dump((bool) "foo");
// bool(true)
var_dump((bool) 2.3e5);
// bool(true)
var_dump((bool) array(12)); // bool(true)
var_dump((bool) array());
// bool(false)
var_dump((bool) "false");
// bool(true)
?>
最后
以上就是大气自行车为你收集整理的转换为布尔值的全部内容,希望文章能够帮你解决转换为布尔值所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复