php中0,空,null和false之间区别

php中0,空,null和false之间区别 :

$a =  0; 
$b="0"; 
$c= ''; 
$d= null; 
$e = false;

echo "5个变量-原始测试类型";
    var_dump($a);//int 0
    var_dump($b);//string '0'
    var_dump($c);//string ''
    var_dump($d);//null
    var_dump($e);//boolean false

echo "<h4>empty测试</h4>";
    var_dump(empty($a));//true
    var_dump(empty($b));//true
    var_dump(empty($c));//true
    var_dump(empty($d));//true
    var_dump(empty($e));//true

echo "<hr>";
    var_dump(isset($a));//true
    var_dump(isset($b));//true
    var_dump(isset($c));//true
    var_dump(isset($d));//【false】 见结论一
    var_dump(isset($e));//true

echo "<h4>(==)双等式测试</h4>";
    var_dump($a == $b);//true
    var_dump($a == $c);//true
    var_dump($a == $d);//true
    var_dump($a == $e);//true !!

    var_dump($b == $c);//{false}//
    对于双等号,我们要先进行类型转化,
    这里b、c都是string类型,0当然不等于空。
    var_dump($b == $d);//【false】见结论二
    var_dump($b == $e);//true

    var_dump($c == $d);//true
    var_dump($c == $e);//true

echo "<h4>(===)三等式测试</h4>";
    var_dump($a === $b);//false
    var_dump($a === $c);//false
    var_dump($a === $d);//false
    var_dump($a === $e);//false

    var_dump($b === $c);//false
    var_dump($b === $d);//false
    var_dump($b === $e);//false

    var_dump($c === $d);//false
    var_dump($c === $e);//false

解释:
1.empty
返回值

当 var 存在,并且是一个非空非零的值时返回 FALSE 否则返回 TRUE。

以下的变量会被认为是空的:

    "" (空字符串)
    0 (作为整数的0)
    0.0 (作为浮点数的0)
    "0" (作为字符串的0)
    NULL
    FALSE
    array() (一个空数组)
    $var; (一个声明了,但是没有值的变量)

2.isset

    PHPisset()函数 一般用来检测变量是否设置
    格式:bool isset ( mixed var [, mixed var [, ...]] )
    
    功能:检测变量是否设置
    
    返回值:
    
    若变量不存在则返回 FALSE
    若变量存在且其值为NULL,也返回 FALSE
    若变量存在且值不为NULL,则返回 TURE 

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值