PHP empty、isset、if、is_null判断的区别

empty

判断一个变量是否为空

$param = null;
empty($param); // true

$param = false;
empty($param); // true

$param = 0.0;
empty($param); // true

$param = 0;
empty($param); // true

$param = '0';
empty($param); // true

$param = [];
empty($param); // true

$param = '';
empty($param); // true

var $param ;
empty($param); // true

isset

判断一个变量是否设置

$param = null;
isset($param); // false

$param = 'null';
isset($param); // true

$param = 00;
isset($param); // true

$param = 0;
isset($param); // true

$param = '0';
isset($param); // true

$param = [];
isset($param); // true

$param = '';
isset($param); // true

$param = false;
isset($param); // true

$param = 'false';
isset($param); // true

if 判断式

$param = 0;
if($param); // false

$param = 00;
if($param); // false

$param = 0.0;
if($param); // false

$param = '0';
if($param); // false

$param = [];
if($param); // false

$param = false;
if($param); // false

$param = null;
if($param); // false

$param = '';
if($param); // false

// -----------------------------------------

$param = '00';
if($param); // true

$param = '0.0';
if($param); // true

$param = 'null';
if($param); // true

$param = 'false';
if($param); // true
  • isset判断变量是否已存在(配置)
  • unset把变量删除(释放)掉
  • empty 判断变量是否为空

is_null

判断变量是否为NULL,我们可以把它看成是!isset,是isset的一个逆操作,


$param = null;
is_null($param); // true

$param = 'null';
is_null($param); // false

对比

变量emptyis_nullisset
$param = ‘’truefalsetrue
$param = nulltruetruefalse
$param = []truefalsetrue
$param = 10falsefalsetrue
$param = 1falsefalsetrue
$param = 0truefalsetrue
$param = ‘0’truefalsetrue
$param = ‘true’falsefalsetrue
$param = falsetruefalsetrue
$param = ‘false’falsefalsetrue
var $paramtruetruefalse
  • 只要变量是否为” “或者0,或者是false和null,只要是这些值empty都会返回true,
  • isset是判断变量是否存在,只要你这个变量不是null或未赋值,返回结果都是true,
  • 而is_null正好是isset的反结果。

示例

echo !isset($_GET['a']); //如果得不到变量a的值
echo empty($_GET['a']); //如果变量a的值是空
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值