PHP中empty和isset的区别

最近又碰到php了,虽然不多,个别知识点总结一下:

部分内容转自 PHP中empty和isset的区别_百度知道

1、区别

PHP 中 empty 和 isset 函数都用于检测给定参数目标情况,其区别如下:

一、函数功能设计所实现的目标不一样:

empty 主要用于:检测给定参数目标是否是“空值”。

isset 主要用于:检测给定参数目标是否设置。

empty 函数检测一个变量是否为以下空值:

isset 函数虽然也会检测给定变量是否为 NULL 的情况,但更主要的目的用于检测给定目标参数是否设置。

从以下实际代码实例中,可能更明显看出两者的区别:

<?php


function MyTest($test)
{

  // 判断 $var 变量是否为空
  if (empty($test)) 
      echo '$var 变量是空值。';  
  else 
      echo '$var 变量不是空值。';

  // 判断 $var 变量是否设置
  if (isset($test)) 
      echo '$var 变量已经设置(即使$var=0)。';
  else
      echo '$var 变量没有设置。';
}

  $var = NULL;
  echo '判断目标参数:$var = NULL:';
  MyTest($var);
  echo '';

  $var1 = 1;
  echo '判断目标参数:$var1 = 1:';
  MyTest($var1);
  echo '';

  $var2 = 0;
  echo '判断目标参数:$var2 = 0:';  
  MyTest($var2);
  echo '';
?>

上面代码运行结果:

2、使用

主要使用empty。

empty函数可判断多级:

<?php
 
  $var['1'] = 1;
  
  if (empty($var['1']['2']['3'])) 
      echo '是空值';  
  else 
      echo '不是空值';
      
?>

// 输出:是空值

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值