手册学习 Boolean 布尔类型

当转换为 boolean 时,以下值被认为是 FALSE

所有其它值都被认为是 TRUE(包括任何资源)。

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)
?>

几个注意的例子:

1.

<?php
$x=TRUE;
$y=FALSE;
$z=$y OR $x;
?>

$z 为FALSE  因为运算符优先级大于OR  $z=$y OR $x; 为($z=$y) OR $x  非 $z=($yOR $x)

<?php
$x=TRUE;
$y=FALSE;
$z=$y || $x;
?>

$z 为TRUE ||优先级大于运算符 $z=$y || $x 为$z=($yOR $x)

2.

<?php
// Consider that the 0 could by any parameters including itself

//考虑到0可以通过任何参数,包括自己
var_dump(0 == 1); // false
var_dump(0 == (bool)‘all‘); // false
var_dump(0 == ‘all‘); // TRUE, take care
var_dump(0 === ‘all‘); // false

// To avoid this behavior, you need to cast your parameter as string like that :
var_dump((string)0 == ‘all‘); // false
?>

时间: 2024-10-01 02:00:05

手册学习 Boolean 布尔类型的相关文章

PHP手册-语言参考-类型-Boolean 布尔类型

1. boolean 表达了真值,可以为 true 或 false.两个都不区分大小写. 2. 通常运算符所返回的 boolean 值结果会被传递给控制流程. 3. 当转换为 boolean 时,以下值被认为时 false: 3.1 布尔值 false 本身 3.2 整型值 0 3.3 浮点型值 0.0 3.4 空字符串,以及字符串“0” 3.5 不包括任何元素的数组 3.6 不包括任何成员变量的对象(仅 PHP 4.0适用) 3.7 特殊类型 NULL(包括尚未赋值的变量) 3.8 从空标记生

Boolean布尔类型

这是最简单的类型.Boolean表达了真值,可以为true或false. 要指定一个布尔值,使用关键字true或false.两个都不区分大小写. <?phpheader("Content-type:text/html;charset=utf-8");$foo = True; // assign the value TRUE to $foo?> 通常运算符所返回的boolean值结果会被传递给控制流程. <?php// == 是一个操作符,它检测两个变量是否相等,并返回

Boolean 布尔类型详解

这是最简单的类型.boolean 表达了真值,可以为 TRUE 或 FALSE.两个都不区分大小写. 要明确地将一个值转换成 boolean,用 (bool)或者 (boolean) 来强制转换.但是很多情况下不需要用强制转换,因为当运算符,函数或者流程控制结构需要一个   boolean 参数时,该值会被自动转换. 当转换为 boolean 时,以下值被认为是 FALSE: 布尔值 FALSE 本身 整型值 0(零) 浮点型值 0.0(零) 空字符串,以及字符串 "0" 不包括任何元

javaScript数字、布尔类型的使用方法

1.数字(Number) javaScript中不区分整数值和浮点数值,javaScript中所有数字均用浮点数值表示. 转换: pareseInt(...) 将某个值转换成数字,不成功返回NaN parseFloat(...)将某个值转换成浮点数,不成功返回NaN 特殊值: Nan,非数字.可使用isNaN(num)来判断. Infinity,无穷大.可使用isFinite(num)来判断. 2.布尔类型(boolean) 布尔类型仅包含真假,与python不同的是其首字母不用大写. == 比

Swift编程语言学习1.5——类型别名、布尔值、元组

类型别名 类型别名(type aliases)就是给现有类型定义另一个名字.你可以使用typealias关键字来定义类型别名. 当你想要给现有类型起一个更有意义的名字时,类型别名非常有用.假设你正在处理特定长度的外部资源的数据: typealias AudioSample = UInt16 定义了一个类型别名之后,你可以在任何使用原始名的地方使用别名: var maxAmplitudeFound = AudioSample.min // maxAmplitudeFound 现在是 0 本例中,A

Delphi中定义了四种布尔类型:Boolean,ByteBool,WordBool和LongBool。后面三种布尔类型是为了与其他语言兼容而引入的

bool是LongBool类型. Delphi中定义了四种布尔类型:Boolean,ByteBool,WordBool和LongBool.后面三种布尔类型是为了与其他语言兼容而引入的,一般情况下建议使用Boolean类型. 这四种类型的布尔值占用内存的数量如下: Boolean 1 Byte ByteBool 1 Byte WordBool 2 Bytes(1 Word) LongBool 4 Bytes(2 Words) 对于ByteBool,WordBool和LongBool三种类型True

python学习第三天 --布尔类型

我们已经了解了Python支持布尔类型的数据,布尔类型只有True和False两种值,但是布尔类型有以下几种运算: 与运算:只有两个布尔值都为 True 时,计算结果才为 True. True and True # ==> True True and False # ==> False False and True # ==> False False and False # ==> False 或运算:只要有一个布尔值为 True,计算结果就是 True. True or True

Go学习笔记(2) 语言基础和数值布尔类型

  1. Go语言环境变量 Go语言开发环境依赖一些操作系统环境变量,常用的环境变量如下: $GOROOT 表示 Go 在你的电脑上的安装位置,它的值一般都是 $HOME/go,当然,你也可以安装在别的地方. $GOARCH 表示目标机器的处理器架构,它的值可以是 386,amd64 或 arm. $GOOS 表示目标机器的操作系统,它的值可以是 darwin,freebsd,linux 或 windows $GOBIN 表示编译器和链接器的安装位置,默认是 $GOROOT/bin,如果你使用的

Swift学习笔记_数据类型_布尔类型

布尔类型 指逻辑上的,只能是真或者假.用Bool表示. 有两个布尔常量:true和false. 主要用于条件判断语句中, 如在需要使用Bool类型的地方使用了非布尔值,swift的类型安全机制会报错. var boolvalue1 = true var boolvalue2 = false var isFinished = true //type bool if isFinished {     print("Finished!") } else {     print("n