数据类型检测
PHP中变量的数据类型通常不是开发人员设定的,而是根据该变量使用的上下文在运行时决定的。为了查看变量的数据类型,可以使用var_dump()来输出,示例代码如下。
Sa = 1;
var_dump($a); // 输出结果: int(1)
Sa = $a + 2.0;
Var_dump($a); // 输出结果: float(3)
为了检测表达式的值是否符合期望的数据类型,PHP提供了一组is_*()的内置函数,括号里的参数为要检测的值。如果检测的值符合检测的数据类型,则返目true,否则返回false。具体如表1所示。
表1 检测数据类型相关的函数
函数名称 | 功能描述 |
---|---|
is_bool() | 检测是否属于布尔类型 |
is_string() | 检测是否属于字符串类型 |
is_float() | 检测是否属于浮点类型 |
is_int() | 检测是否属于整型 |
is_null() | 检测是否属于空值 |
is_array() | 检测是否属于数组 |
is_resource() | 检测是否属于资源 |
is_object() | 检测是否属于对象类型 |
is_numeric() | 检测是否属于数字或数字组成的字符串 |
接下来,为了方便大家理解这些函数的使用,通过var_ dump()函数对检测结果进行打印输出,具体示例如下所示。
var_dump( is_bool('1') ); // 输出结果: bool(false)
var_dump( is_string('php') ); // 输出结果: bool(true)
var_dump( is_float('23') ); // 输出结果: bool(false)
var_dump( is_int('23.0') ); // 输出结果: bool(false)
var_dump( is_numeric('45.6') ); // 输出结果: bool(true)