php判断变量类型

一、总结

一句话总结:

gettype()函数:gettype(1);返回的是integer
is_array():is系列函数

 

1、PHP empty、isset、isnull的区别?

empty:【""、0、"0"、NULL、FALSE、array()、var $var、未定义;以及没有任何属性的对象都将被认为是空的】
isset:【如果 变量 存在(非NULL)则返回 TRUE】
is_null:【检测传入值【值,变量,表达式】是否是null,只有一个变量定义了,且它的值是null,它才返回TRUE】

 

 

 

二、PHP中变量类型的判断

 

gettype 会根据 参数类型返回下列值 

“boolean”(从 PHP 4 起) 

“integer” 

“double”(如果是 float 则返回“double”,而不是“float”) 

“string” 

“array” 

“object” 

“resource”(从 PHP 4 起) 

“NULL”(从 PHP 4 起) 

“unknown type” 


例如: 

gettype('1');返回的是string 

而gettype(1);返回的是integer 

二、php自带的类型判断如下

       



1 isset():                        //变量是否已经声明
2 empty(): //变量是否为空
3 defined():                       //常量是否已经定义 define()
4 array_key_exists(mixed key, array search): //检查给定的键名或索引是否存在于数组中
5
6 is_numeric ( mixed var ): //检测变量是 否为数字或数字字符串
7 is_bool(): // 检测变量是否是布尔型
8 is_float(): // 检测变量是否是浮点型 和is_double,is_real()都一样的用法
9 is_int(): // 检测变量是否是整数is_integer() 一样的 用法
10 is_string(): // 检测变量是否是字符串
11 is_object(): // 检测变量是否是一个对象
12 is_array(): // 检测变量是否是数组
13 is_null(): // 检测变量是否为 NULL 值是否是NULL大小写敏感


 

三、PHP empty、isset、isnull的区别

empty

如果 变量 是非空或非零的值,则 empty() 返回 FALSE。换句话说,”"、0、”0″、NULL、FALSE、array()、var $var、未定义;以及没有任何属性的对象都将被认为是空的,如果 var 为空,则返回 TRUE。

isset

如果 变量 存在(非NULL)则返回 TRUE,否则返回 FALSE(包括未定义)。变量值设置为:null,返回也是false;unset一个变量后,变量被取消了。注意,isset对于NULL值变量,特殊处理。

is_null

检测传入值【值,变量,表达式】是否是null,只有一个变量定义了,且它的值是null,它才返回TRUE . 其它都返回 FALSE 【未定义变量传入后会出错!】