PHP基础——数据类型之间的相互转换

1.自动转换类型:

 自动转换,通常发生在不同数据类型的变量进行混合运算时。一般只有四种标量类型int、float、string、bool才会进行自动转换。

 注:

布尔型参与运算,true转换为1,false转换为0;

null参与运算,转换为0

int与float参与运算,先把int转换成float在运算。

字符串、数字参与运算,字符串先转换成数字。转换后的数字从字符串开始的数值开始,不带小数点则为int,否则为false。字符串"abcsd"直接转换成0;

2.强制类型转换:

 强制转换方法:

在转换的变量前加上目标类型,包括(int)、(bool)、(float)、(string)、(array)、(object)

使用内置转换函数intval()、floatval()、strval()

以上两种方法均没有改变被转换变量本身的类型,而是转换得到新的类型数据值给变量,原始变量的类型和值不变。

setType();会将变量本身类型改变成其他类型。


注意:

类型转换中浮点型转换成整型,会舍弃小数部分,只保留整数。

字符串转换为数字时,转换后的数字是从字符串开始部分的数值型字符部分转换的。


3.变量类型的内置测试函数:

gettype();确定变量类型,并返回一个包含名称的字符串。

is_bool():判定是否为bool

is_int();判定是否为整型

is_float():判定是否为浮点型

is_string():判定是否为字符串

is_array();判定是否为数组

is_object():判定是否为对象

is_resource():判定是否为资源

is_null():判断是否为空

is_scalar():判断是否为标量

is_numeric():判断是否为数字或数字字符串

is_callable():判断是否为有效函数名

郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。