php中isset() 和 empty() 的区别
很多人只想着高深的技术,却连基础知识储备都不过关!一个简单的问题都能被问的发怵,简直可笑!对!说的就是我自己!接下来会一直坚持做一些简单的知识总结。
1、isset() 的定义
检测变量是否已设置并且非 NULL
<?php
$var = '';
// 结果为 TRUE,所以后边的文本将被打印出来。
if (isset($var)) {
echo "This var is set so I will print.";
}
// 在后边的例子中,我们将使用 var_dump 输出 isset() 的返回值。
// the return value of isset().
$a = "test";
$b = "anothertest";
var_dump(isset($a)); // TRUE
var_dump(isset($a, $b)); // TRUE
unset ($a);
var_dump(isset($a)); // FALSE
var_dump(isset($a, $b)); // FALSE
$foo = NULL;
var_dump(isset($foo)); // FALSE
?>结果
This var is set so I will print.bool(true)
bool(true)
bool(false)
bool(false)
bool(false)2、empty() 的定义
==检查一个变量是否为空==
以下的东西被认为是空的:
- "" (空字符串)
- 0 (作为整数的0)
- 0.0 (作为浮点数的0)
- "0" (作为字符串的0)
- NULL
- FALSE
- array() (一个空数组)
- $var; (一个声明了,但是没有值的变量)
3、isset() 和 empty()的比较
$var = 0;
if (empty($var)) {
echo 1;
}//1
if (isset($var)) {
echo 2;
}//14、 0、‘’、null之间相等关系
if('' == null && '' == 0 && null == 0 && 0 =='0')
echo true;
//返回结果 1;
if('' == '0' || null == '0' )
echo true;
//返回结果 untitled;结论:==' ' ,null , 0 ,'0'互相相等;'',null不等于'0'==
本文内容仅供个人学习、研究或参考使用,不构成任何形式的决策建议、专业指导或法律依据。未经授权,禁止任何单位或个人以商业售卖、虚假宣传、侵权传播等非学习研究目的使用本文内容。如需分享或转载,请保留原文来源信息,不得篡改、删减内容或侵犯相关权益。感谢您的理解与支持!