isset,empty,is_null函数用来判断php变量是否定义,空值,false,null等情况,本篇笔记对三个函数区别进行了详细的介绍
函数功能
isset:
检测一个或多个变量是否存在并且非null,当传入多个参数时,从左至右计算,全部参数都存在并且非null时才返回true,计算时遇到不存在或值为null的参数立即停止计算并返回false。
empty:
检测一个变量是否为空,当一个变量不存在,或者它的值等同于false,empty()将返回true。
is_null:
检测变量是否为null,如果为null,返回true,如果变量不存在,返回true并产生Notice: Undefined variable...
范例
<?php
/**
* Created by PhpStorm.
* User: jmsite.cn
* Date: 2019/3/2
* Time: 16:15
*/
var_dump(isset($a));
var_dump(empty($a));
var_dump(is_null($a));
echo "\n";
$a = null;
var_dump(isset($a));
var_dump(empty($a));
var_dump(is_null($a));
echo "\n";
$a = "a";
var_dump(isset($a));
var_dump(empty($a));
var_dump(is_null($a));
以上代码会输出
bool(false)
bool(true)
Notice: Undefined variable: a in E:\repository\work\study\test0302.php on line 11
bool(true)
bool(false)
bool(true)
bool(true)
bool(true)
bool(false)
bool(false)
php对null和空值的定义
以下情况变量被认为是 NULL:
1.被赋值为 NULL
2.尚未被赋值
3.unset()
后
以下值被认为是空值,等同于false:
1.""
(空字符串)
2.0
(整数0)
3.0.0
(浮点数0)
4."0"
(字符串0)
5.NULL
6.FALSE
7.array()
(空数组)
8.$var;
(声明了但是没有赋值的变量)
原文地址:https://www.jmsite.cn/blog-707.html