Home  >  Article  >  Backend Development  >  Analyze the difference between empty(), isset() and is_null() in PHP

Analyze the difference between empty(), isset() and is_null() in PHP

怪我咯
怪我咯Original
2017-04-05 10:00:461123browse

There has been a lot of discussion about the usage of empty(), isset() and is_null() functions of PHP, and a lot of information may not be very clear. I repeat it here again, but instead of speaking from concepts, it should be more profound to memorize it by directly using program examples.

The types of tests are as follows:

<?php

$a;
$b = false;
$c = &#39;&#39;;
$d = 0;
$e = null;
$f = array();

?>

empty()

The first is the var_dump output of empty:

<?php

var_dump(empty($a));
var_dump(empty($b));
var_dump(empty($c));
var_dump(empty($d));
var_dump(empty($e));
var_dump(empty($f));

?>

The program output is:

bool(true)
bool(true)
bool(true)
bool(true)
bool(true)
bool(true)

As can be seen from the code, empty() will output true as long as the data type is empty or false.

isset()

Look at the output of isset:

var_dump(isset($a));
var_dump(isset($b));
var_dump(isset($c));
var_dump(isset($d));
var_dump(isset($e));
var_dump(isset($f));

// 输出
bool(false)
bool(true)
bool(true)
bool(true)
bool(false)
bool(true)

It can be seen that isset() can only be used to determine whether it is NULL and undefined.

is_null()

Finally, the output of is_null:

var_dump(is_null($a));
var_dump(is_null($b));
var_dump(is_null($c));
var_dump(is_null($d));
var_dump(is_null($e));
var_dump(is_null($f));

// 输出
bool(true)
bool(false)
bool(false)
bool(false)
bool(true)
bool(false)

is_null is literal.

It can be seen that empty() can be used to determine whether all data types are empty or false, while is_null is basically the same as isset and can only be used to determine whether it is NULL and undefined

The above is the detailed content of Analyze the difference between empty(), isset() and is_null() in PHP. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn