Unix and Linux Discussions Tagged with empty |
|
Thread / Thread Starter |
Last Post |
Replies |
Views |
Forum |
|
|
|
2 |
38,846 |
Shell Programming and Scripting |
|
|
|
2 |
16,312 |
UNIX for Beginners Questions & Answers |
|
|
|
7 |
11,566 |
UNIX for Beginners Questions & Answers |
|
|
|
7 |
4,201 |
Programming |
|
|
|
0 |
13,535 |
Shell Programming and Scripting |
|
|
|
4 |
3,515 |
UNIX for Dummies Questions & Answers |
|
|
|
2 |
5,619 |
UNIX for Dummies Questions & Answers |
|
|
|
5 |
15,233 |
Shell Programming and Scripting |
|
|
|
7 |
17,150 |
Shell Programming and Scripting |
|
|
|
6 |
5,337 |
Shell Programming and Scripting |
|
|
|
12 |
5,704 |
Shell Programming and Scripting |
|
|
|
2 |
15,799 |
UNIX for Dummies Questions & Answers |
|
|
|
9 |
6,005 |
HP-UX |
|
|
|
1 |
22,617 |
UNIX for Dummies Questions & Answers |
|
|
|
4 |
2,002 |
Shell Programming and Scripting |
|
|
|
2 |
4,441 |
Programming |
|
|
|
1 |
4,004 |
Shell Programming and Scripting |
|
|
|
2 |
10,593 |
UNIX for Dummies Questions & Answers |
|
|
|
4 |
19,590 |
Shell Programming and Scripting |
|
|
|
5 |
8,258 |
UNIX for Dummies Questions & Answers |
|
|
|
3 |
3,493 |
Shell Programming and Scripting |
|
|
|
0 |
1,004 |
Software Releases - RSS News |
|
|
|
1 |
26,676 |
UNIX for Dummies Questions & Answers |
|
|
|
4 |
4,256 |
UNIX for Dummies Questions & Answers |
|
|
|
12 |
114,249 |
Shell Programming and Scripting |
|
|
|
7 |
25,656 |
UNIX for Dummies Questions & Answers |
|
|
|
2 |
235,081 |
UNIX for Dummies Questions & Answers |
|
|
|
2 |
65,984 |
UNIX for Dummies Questions & Answers |
|
|
|
4 |
3,110 |
Shell Programming and Scripting |
|
|
|
8 |
44,828 |
UNIX for Dummies Questions & Answers |
|
|
|
2 |
7,434 |
Shell Programming and Scripting |
|
|
|
2 |
4,550 |
UNIX for Dummies Questions & Answers |
|
|
|
1 |
3,322 |
UNIX for Dummies Questions & Answers |
|
|
|
13 |
10,829 |
UNIX for Dummies Questions & Answers |
|
|
|
3 |
3,944 |
Programming |
|
|
|
2 |
3,191 |
UNIX for Dummies Questions & Answers |
|
|
|
5 |
3,744 |
UNIX for Dummies Questions & Answers |
|
|
|
2 |
8,862 |
UNIX for Dummies Questions & Answers |
|
|
|
6 |
4,253 |
UNIX for Dummies Questions & Answers |
|
|
|
2 |
2,718 |
UNIX for Dummies Questions & Answers |
EMPTY(3) 1 EMPTY(3)
empty - Determine whether a variable is empty
SYNOPSIS
bool empty (mixed $var)
DESCRIPTION
Determine whether a variable is considered to be empty. A variable is considered empty if it does not exist or if its value equals FALSE.
empty(3) does not generate a warning if the variable does not exist.
PARAMETERS
o $var
- Variable to be checked
Note
Prior to PHP 5.5, empty(3) only supports variables; anything else will result in a parse error. In other words, the follow-
ing will not work: empty(trim($name)). Instead, use trim($name) == false.
No warning is generated if the variable does not exist. That means empty(3) is essentially the concise equivalent to !isset($var)
|| $var == false.
RETURN VALUES
Returns FALSE if $var exists and has a non-empty, non-zero value. Otherwise returns TRUE.
The following things are considered to be empty:
o "" (an empty string)
o 0 (0 as an integer)
o 0.0 (0 as a float)
o "0" (0 as a string)
o NULL
o FALSE
o array() (an empty array)
o $var; (a variable declared, but without a value)
CHANGELOG
+--------+---------------------------------------------------+
|Version | |
| | |
| | Description |
| | |
+--------+---------------------------------------------------+
| 5.5.0 | |
| | |
| | empty(3) now supports expressions, rather than |
| | only variables. |
| | |
| 5.4.0 | |
| | |
| | Checking non-numeric offsets of strings returns |
| | TRUE. |
| | |
+--------+---------------------------------------------------+
EXAMPLES
Example #1
A simple empty(3) / isset(3) comparison.
<?php
$var = 0;
// Evaluates to true because $var is empty
if (empty($var)) {
echo '$var is either 0, empty, or not set at all';
}
// Evaluates as true because $var is set
if (isset($var)) {
echo '$var is set even though it is empty';
}
?>
Example #2
empty(3) on String Offsets
PHP 5.4 changes how empty(3) behaves when passed string offsets.
<?php
$expected_array_got_string = 'somestring';
var_dump(empty($expected_array_got_string['some_key']));
var_dump(empty($expected_array_got_string[0]));
var_dump(empty($expected_array_got_string['0']));
var_dump(empty($expected_array_got_string[0.5]));
var_dump(empty($expected_array_got_string['0.5']));
var_dump(empty($expected_array_got_string['0 Mostel']));
?>
Output of the above example in PHP 5.3:
bool(false)
bool(false)
bool(false)
bool(false)
bool(false)
bool(false)
Output of the above example in PHP 5.4:
bool(true)
bool(false)
bool(false)
bool(false)
bool(true)
bool(true)
NOTES
Note
Because this is a language construct and not a function, it cannot be called using variable functions.
Note
When using empty(3) on inaccessible object properties, the __isset() overloading method will be called, if declared.
SEE ALSO
isset(3), __isset(), unset(3), array_key_exists(3), count(3), strlen(3), The type comparison tables.
PHP Documentation Group EMPTY(3)