2.2.3 变量类型的转换
和C、C++等语言不同,PHP在定义变量时,不需要明确指定变量的类型。也就是说,把一个整数指定给变量$v,那么$v就是一个整型变量,如果把一个字符串指定给它,那么它就是一个字符串变量。若要转换类型,在PHP程序中也是很自由的,一般不必经过特殊的转换。
当然,PHP中也可以对变量做强制转换,这点和C语言相似,在要转换的变量之前加上目标类型,目标类型用括号括起来。如代码2-5所示,将整型变量转换成布尔型变量。
代码2-5 变量类型的强制转换2-5.php
01 <?php
02 $foo=10;//定义一个整型变量
03
04 echo"转换前:\$foo=".$foo;
05 echo"<br/>";
06 echo"<br/>";
07
08 $foo=(boolean)$foo;//转换变量类型为boolean型
09 echo"转换后:\$foo=".$foo;
10 ?>
【代码解析】第2行定义的变量$foo是整型,第8行用(boolean)将其强制转换为布尔型,非0的值转换为布尔型结果都为真(1),如果用布尔类型进行数据类型转换,明白这个非常关键。
上例程序执行结果如图2-5所示。
PHP中允许的强制类型转换有:
❑(int)、(integer)——转换成整型。
❑(bool)、(boolean)——转换成布尔型。
❑(float)、(double)、(real)——转换成浮点型。
❑(string)——转换成字符串。
❑(array)——转换成数组。
❑(object)——转换成对象。
共有条评论 网友评论