What are the methods in php to detect whether a variable is empty?

王林
Release: 2023-03-08 06:02:01
forward
3256 people have browsed it

What are the methods in php to detect whether a variable is empty?

There are the following five methods in php to detect whether a variable is empty. So what are the differences between these five methods? Let’s take a look together below.

1. isset function: determine whether the variable has been initialized

Note: It does not determine whether the variable is empty, but can be used to determine whether the elements in the array have been defined.

Note: When using isset to determine whether an array element has been initialized, its efficiency is about 4 times higher than array_key_exists.

<?php
    //$a = &#39;&#39;;
    //$a = false;
    $a[&#39;c&#39;] = &#39;&#39;;
    if (!isset($a)) echo &#39;$a 未被初始化&#39; . "<br/>";
    if (!isset($b)) echo &#39;$b 未被初始化&#39; . "<br/>";
    if (isset($a[&#39;c&#39;])) echo &#39;$a 已经被初始化&#39; . "<br/>";
//结果
// $b 未被初始化
// $a 已经被初始化
Copy after login

2. empty() function: detect whether the variable is "empty"

Description: Any uninitialized variable, the value is 0 or false or the empty string "" or null Variables, empty arrays, objects without any properties, empty(variable) == true.

Note 1: Uninitialized variables can also be detected as "empty" by empty.

Note 2: empty can only detect variables, not statements.

<?php
$a = 0;
$b = &#39;&#39;;
$c = array();
if (empty($a)) echo &#39;$a 为空&#39; . "<br/>";
if (empty($b)) echo &#39;$b 为空&#39; . "<br/>";
if (empty($c)) echo &#39;$c 为空&#39; . "<br/>";
if (empty($d)) echo &#39;$d 为空&#39; . "<br/>";
//结果
// $a 为空
// $b 为空
// $c 为空
// $d 为空
var_dump(empty(null));
var_dump(empty(0));
var_dump(empty(&#39;&#39;));
var_dump(empty([]));
//结果
// bool(true)
// bool(true)
// bool(true)
// bool(true)
Copy after login

3. var == null Function: Determine whether the variable is "empty"

Description: The value is 0 or false or an empty string "" or null variable, empty Arrays and arrays will all be judged as null.

(Learning video sharing: php video tutorial)

Note: The significant difference from empty is: when the variable is not initialized, var == null will report an error.

<?php
$a = 0;
$b = array();
if ($a == null) echo &#39;$a 为空&#39; . "";
if ($b == null) echo &#39;$b 为空&#39; . "";
if ($c == null) echo &#39;$c 为空&#39; . "";

// 显示结果为
// $a 为空
// $b 为空
// Undefined variable: c
Copy after login

4. is_null function: detect whether the variable is "null"

Description: When the variable is assigned a value of "null", the detection result is true.

Note 1: null is not case-sensitive: a=null;a=null;a = NULL makes no difference.

Note 2: Only when the value of the variable is "null", the detection result is true. 0, empty string, false, and empty array are all detected as false.

Note 3: When the variable is not initialized, the program will report an error.

<?php
$a = null;
$b = false;

if (is_null($a)) echo &#39;$a 为NULL&#39; . "";
if (is_null($b)) echo &#39;$b 为NULL&#39; . "";
if (is_null($c)) echo &#39;$c 为NULL&#39; . "";

// 显示结果为
// $a 为NULL
// Undefined variable: c
Copy after login

5. var === null function: detect whether the variable is "null", and the type of the variable must also be "null"

Description: When the variable is assigned a value of "null" When, and the type of the variable is also "null", the detection result is true.

*Note 1: When judging "null", equal to is_null has the same effect.

*Note 2: When the variable is not initialized, the program will report an error.

Summary:

In PHP, "NULL" and "empty" are two concepts.
isset is mainly used to determine whether the variable has been initialized.
empty can judge variables with values ​​of "false", "empty", "0", "NULL", and "uninitialized" as TRUE.
is_null only evaluates variables with a value of "NULL" as TRUE.
var == null Judges variables with values ​​of "false", "empty", "0", and "NULL" as TRUE.
var === null Only variables with a value of "NULL" are judged as TRUE.

Note: When judging whether a variable is really "NULL", is_null is mostly used to avoid interference from "false", "0" and other values.

Related recommendations: php tutorial

The above is the detailed content of What are the methods in php to detect whether a variable is empty?. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
source:csdn.net
Statement of this Website
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
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template