本文已收录于PHP全栈系列专栏:PHP快速入门与实战
PHP的类型转换是指将一个变量类型转换为另一个变量类型的过程。 PHP支持自动类型转换和显式类型转换两种方式:
PHP会自动根据需要将一个变量的类型转换为另一种类型。比如,当一个布尔值与一个整数相加时,布尔值会被转换成整数。在不同的运算中,PHP自动进行的类型转换有:
下面是自动类型转化的实例:
$num1 = "10";
$num2 = 5;
$sum = $num1 + $num2;
echo $sum; // 输出结果为15,$num1被自动转换为整型
显式类型转换指使用特定的函数或操作符来明确地改变变量的类型。下面是PHP中常用的显式类型转换操作:
下面是显式类型转换的实例:
// 将字符串转换为整型
$str_num = "10";
$num = intval($str_num);
echo $num; // 输出结果为10
// 将浮点型转换为字符串
$float_num = 3.14;
$str = strval($float_num);
echo $str; // 输出结果为"3.14"
// 将布尔型转换为整型
$bool_val = true;
$num = intval($bool_val);
echo $num; // 输出结果为1
// 将整型转换为布尔型
$num = 0;
$bool_val = boolval($num);
echo $bool_val; // 输出结果为false
$str_num = "10";
$num = intval($str_num);
$num = 10;
$str_num = strval($num);
$float_num = 3.14;
$num = intval($float_num);
$num = 10;
$float_num = floatval($num);
$bool_val = true;
$num = intval($bool_val);
$num = 0;
$bool_val = boolval($num);
$str_num = "3.14";
$float_num = floatval($str_num);
$float_num = 3.14;
$str_num = strval($float_num);
$str_num = "3.14";
$float_num = (float)$str_num;
$str_num = "10";
$num = (int)$str_num;
$bool_val = false;
$str_bool = ($bool_val) ? "true" : "false";
$arr = array("a", "b", "c");
$str_arr = implode(",", $arr);
$str_arr = "a,b,c";
$arr = explode(",", $str_arr);
class Person {
public $name = "Tom";
public $age = 20;
}
$person = new Person();
$arr = (array)$person;
$arr = array("name" => "Tom", "age" => 20);
$json_str = json_encode($arr);
以上就是关于本篇文章介绍的内容,PHP类型转换,后续更多内容将收录在专栏PHP快速入门与实战中,感谢大家支持。