易百教程

PHP类型转换

在学习PHP的类型变换之前,阅读以下一段代码:

<?php
<?php
     $a = "1"; // 字符串类型
     $b = 2;   // 整数类型
     var_dump($a + $b); // 3 
     var_dump($a . $b); // 12 
?>

执行上面示例代码,得到以下结果:

int(3)
string(2) "12"

在上面示例代码中,+运算符返回两个数值的总和。点(.)运算符连接两个字符串。因此,前面的代码将字符串和整数分配给两个变量,然后相加和连接它们。
当尝试使用+相加它们时,PHP引擎需要两个数值,因此它尝试将字符串调整为整数。
在这种情况下,字符串表示有效数字值。这就是为什么将第一个结果被看作整数3(1 + 2)的原因。
在最后一行中,PHP引擎执行字符串连接。有一个$b的整数,所以PHP引擎会首先尝试将其转换为字符串 - 也就是"2",然后将其与另一个字符串:"1"连接起来。所以结果是字符串:"12"

类型转换

PHP尝试在需要时转换变量的数据类型。PHP不会更改变量本身的值。PHP会尝试转换它的类型,但变量的值保持不变。