This article introduces the array problems encountered in PHP development. The editor here summarizes 5 methods for determining whether the array is empty in PHP. Friends who need it can refer to it.
This article introduces PHP For array problems encountered in development, here are 5 methods to determine whether a PHP array is empty. Friends in need can refer to it.
1. isset function: determine whether the variable has been initialized
Note: It does not determine whether the variable is empty, and 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 = ''; $a['c'] = ''; if (!isset($a)) echo '$a 未被初始化' . ""; if (!isset($b)) echo '$b 未被初始化' . ""; if (isset($a['c'])) echo '$a 已经被初始化' . ""; // 显示结果为 // $b 未被初始化 // $a 已经被初始化
2. empty function: detection Whether the variable is "empty"
Explanation: Any uninitialized variable, a variable with a value of 0 or false or an empty string "" or null, an empty array, or an object without any attributes will be judged as empty==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 = ''; $c = array(); if (empty($a)) echo '$a 为空' . ""; if (empty($b)) echo '$b 为空' . ""; if (empty($c)) echo '$c 为空' . ""; if (empty($d)) echo '$d 为空' . "";
3. var == null Function: Determine whether the variable is "empty"
Description: The value is 0 or false or the empty string "" or null Variables and empty arrays will be judged as null
Note: The significant difference from empty is that var == null will report an error when the variable is not initialized.
<?php $a = 0; $b = array(); if ($a == null) echo '$a 为空' . ""; if ($b == null) echo '$b 为空' . ""; if ($c == null) echo '$b 为空' . ""; // 显示结果为 // $a 为空 // $b 为空 // Undefined variable: c
4. is_null function: detect whether the variable is "null"
Description: When the variable is assigned a value of "null", detect The result is true
Note 1: null is not case-sensitive: $a = null; $a = NULL makes no difference
Note 2: Only when the value of the variable is "null", Only when 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 '$a 为NULL' . ""; if (is_null($b)) echo '$b 为NULL' . ""; if (is_null($c)) echo '$c 为NULL' . ""; // 显示结果为 // $a 为NULL // Undefined variable: c
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, at the same time, when the type of the variable is also "null", the detection result is true
Note 1: When it is judged to be "null", it is equal to the same effect as is_null
Note 2: Variable When not initialized, the program will report an error
Summary:
In PHP, "NULL" and "empty" are two concepts.
isset is mainly used to determine whether a variable has been initialized.
empty can set variables with values of "false", "empty", "0", "NULL" and "uninitialized". Judged as TRUE
is_null Only variables whose value is "NULL" are judged as TRUE
var == null Judged as "false", "empty", "0", "NULL" All variables are judged to be TRUE
var === null. Only variables with a value of "NULL" are judged to be TRUE
. Note: When judging whether a variable is really "NULL", most of the Use is_null to avoid interference with values such as "false" and "0".
The above is the common method (five methods) for judging whether an array is empty in PHP introduced by the editor. I hope it will be helpful to you. If you have any questions, please leave me a message. Editor Will reply to everyone promptly. I would also like to thank you all for your support of the PHP Chinese website!
For more common methods (five methods) in PHP to determine whether an array is empty, please pay attention to the PHP Chinese website!