php中null和empty的区别是什么?分享php中null和empty的区别

时间:2022-02-21 16:15:01       来源:php中文网

本文操作环境:Windows10系统、PHP7.1版、Dell G3电脑。

php中null和empty的区别是什么

null 表示表示一个变量没有值。一个变量为null有三种情况:

1.被赋值为 NULL 。

2. 尚未被赋值。

3. 被 unset() 。

empty() 函数用于检查一个变量是否为空。

empty() 判断一个变量是否被认为是空的。当一个变量并不存在,或者它的值等同于 FALSE,那么它会被认为不存在。如果变量不存在的话,empty()并不会产生警告。

empty() 5.5 版本之后支持表达式了,而不仅仅是变量。

语法

bool empty ( mixed $var )

参数说明:

$var:待检查的变量。

注意:在 PHP 5.5 之前,empty() 仅支持变量;任何其他东西将会导致一个解析错误。换言之,下列代码不会生效:

empty(trim($name))

作为替代,应该使用:

trim($name) == false

empty() 并不会产生警告,哪怕变量并不存在。 这意味着 empty() 本质上与 !isset($var) || $var == false 等价。

当 var 存在,并且是一个非空非零的值时返回 FALSE 否则返回 TRUE。

以下的变量会被认为是空的:

"" (空字符串)

0 (作为整数的0)

0.0 (作为浮点数的0)

"0" (作为字符串的0)

NULL

FALSE

array() (一个空数组)

$var; (一个声明了,但是没有值的变量)

实例

$ivar1=0;

$istr1='Runoob';

if (empty($ivar1))

{

echo '$ivar1' . " 为空或为 0。" . PHP_EOL;

}

else

{

echo '$ivar1' . " 不为空或不为 0。" . PHP_EOL;

}

if (empty($istr1))

{

echo '$istr1' . " 为空或为 0。" . PHP_EOL;

}

else

{

echo '$istr1' . " 字符串不为空或不为0。" . PHP_EOL;

}

?>

关键词: 数据类型 变量没有值