空值

PHP 代表 null 关键字 “ 无价值” 。它有点类似于 C 语言中的空指针和 SQL 中的 NULL 值。

将变量设置为 null:

$nullvar = null; // directly

function doSomething() {} // this function does not return anything
$nullvar = doSomething(); // so the null is assigned to $nullvar

检查变量是否设置为 null:

if (is_null($nullvar)) { /* variable is null */ }

if ($nullvar === null) {  /* variable is null */ }

Null 与未定义的变量

如果未定义变量或未设置变量,那么针对 null 的任何测试都将成功,但它们也将生成 Notice: Undefined variable: nullvar

$nullvar = null;
unset($nullvar);
if ($nullvar === null) {  /* true but also a Notice is printed */ }
if (is_null($nullvar)) {  /* true but also a Notice is printed */ }

因此,必须使用 isset 检查未定义的值 :

if (!isset($nullvar)) {  /* variable is null or is not even defined */  }