判断php变量是否定义,是否为空

来源:互联网 发布:linux与windows区别 编辑:程序博客网 时间:2024/06/08 06:22

isset() 【1】

Returns TRUE if var exists and has value other than NULL, FALSE otherwise.

输入可以是多个变量,只有所有的变量为真的时候,返回真

 

empty()【2】

 

Returns FALSE if var has a non-empty and non-zero value.

The following things are considered to be empty:

  • "" (an empty string)
  • 0 (0 as an integer)
  • "0" (0 as a string)
  • NULL
  • FALSE
  • array() (an empty array)
  • var $var; (a variable declared, but without a value in a class)

 

输入只能是一个变量

 

is_null() 【3】

Returns TRUE if var is null , FALSE otherwise.

 

 

 

   A variable is considered to be null if:

  • it has been assigned the constant NULL.

  • it has not been set to any value yet.

  • it has been unset().    

使用 PHP 函数对变量 $x 进行比较表达式gettype()empty()is_null()isset()if($x) Boolean$x = "";stringTRUEFALSETRUEFALSE$x = null;NULLTRUETRUEFALSEFALSEvar $x;NULLTRUETRUEFALSEFALSE$x is undefinedNULLTRUETRUEFALSEFALSE$x = array();arrayTRUEFALSETRUEFALSE$x = false;booleanTRUEFALSETRUEFALSE$x = true;booleanFALSEFALSETRUETRUE$x = 1;integerFALSEFALSETRUETRUE$x = 42;integerFALSEFALSETRUETRUE$x = 0;integerTRUEFALSETRUEFALSE$x = -1;integerFALSEFALSETRUETRUE$x = "1";stringFALSEFALSETRUETRUE$x = "0";stringTRUEFALSETRUEFALSE$x = "-1";stringFALSEFALSETRUETRUE$x = "php";stringFALSEFALSETRUETRUE$x = "true";stringFALSEFALSETRUETRUE$x = "false";stringFALSEFALSETRUETRUE

 

(上表没有找到原始来源,谁知道请告诉我)

 

如果变量是一个object该如何呢?

表达式gettype()empty()is_null()isset()if($x) Boolean$x = new object() objectFALSEFALSETRUETRUE

 

参考:

【1】http://php.net/manual/en/function.isset.php

【2】http://www.php.net/manual/en/function.empty.php

【3】http://www.php.net/manual/en/function.is-null.php

原创粉丝点击