在PHP中isset()和empty()之间很容易混淆,它们都是用于测试变量的值,都返回一个布尔值。在使用 php 编写页面程序时,经常使用变量处理函数判断 php 页面尾部参数的某个变量值是否为空,开始的时候我习惯了使用 empty() 函数,却发现了一些问题,因此改用 isset() 函数,问题不再。本文章向大家详细介绍PHP isset()和empty()区别。
isset()函数是用于确定变量是否已设置且不为空。
语法:
bool isset ( mixed var [, mixed var [, ...]] )
返回值:
例子:
- $x = '白煮蛋的博客';
- var_dump(isset($x));
上面结果会返回true.
empty() 函数用于检查一个变量是否为空。
empty() 判断一个变量是否被认为是空的。当一个变量并不存在,或者它的值等同于 FALSE,那么它会被认为不存在。如果变量不存在的话,empty()并不会产生警告。
语法:
bool empty ( mixed $var )
当 var 存在,并且是一个非空非零的值时返回 FALSE 否则返回 TRUE。
以下的变量会被认为是空的:
NULLFALSE例子:
- $temp_val = 0;
- if (empty($temp_val)) {
- echo $temp_val . ' is considered empty';
- }
- echo "nn";
- $new_val = 1;
- if (!empty($new_val)) {
- echo $new_val . ' is considered set';
- }
- ?>
输出:
0 is considered empty 1 is considered set
empty方法:
isset方法:
一张表搞清楚php empty()和isset()的区别:
| “” | “apple” | NULL | FALSE | 0 | undefined | |
| empty() | TRUE | FALSE | TRUE | TRUE | TRUE | TRUE |
| isset() | TRUE | TRUE | FALSE | TRUE | TRUE | FALSE |
以下代码有助于你深入了解php empty()和isset()的区别:
-
- print "
ISSET:
"; - $var = "";
- print "isset():". isset($var)."
"; - $var = "apple";
- print "isset('apple'):". isset($var)."
"; - $var = NULL;
- print "isset('NULL'):". isset($var)."
"; - $var = FALSE;
- print "isset('FALSE'):". isset($var)."
"; - $var = 0;
- print "isset('0'):". isset($var)."
"; - print "isset(undefined):". isset($var3)."
"; -
- print "
EMPTY:
"; - $var = "";
- print "empty():". empty($var)."
"; - $var = "apple";
- print "empty('apple'):". empty($var)."
"; - $var = NULL;
- print "empty('NULL'):". empty($var)."
"; - $var = FALSE;
- print "empty('FALSE'):". empty($var)."
"; - $var = 0;
- print "empty('0'):". empty($var)."
"; - print "empty(undefined):". empty($var1)."
";
输出结果:
- ISSET:
- isset():1
- isset('apple'):1
- isset('NULL'):
- isset('FALSE'):1
- isset('0'):1
- isset(undefined):
-
- EMPTY:
- empty():1
- empty('apple'):
- empty('NULL'):1
- empty('FALSE'):1
- empty('0'):1
- empty(undefined):1
以上是本文的全部类容,感谢阅读,希望能帮到大家。更多教程请访问码农之家