「作者主页」:士别三日wyx
「作者简介」:CSDN top100、阿里云博客专家、华为云享专家、网络安全领域优质创作者
「推荐专栏」:对网络安全感兴趣的小伙伴可以关注专栏《网络安全入门到精通》
isset
isset() 函数可以检测「变量是否存在」并非NULL。常用来判断变量是否被定义,以避免变量未定义而报错。
语法
boolisset($var)
参数
- $var :需要检测的变量
返回值:
isset() 返回一个布尔类型的值。
- true :变量「已定义」
- false:变量「未定义」或变量为 NULL 或 变量被 unset()
一、判断变量是否存在
变量「存在」返回 true ,变量「不存在」返回 false
实例:
<?php$var1='hello world';var_dump(isset($var1));var_dump(isset($var2));
输出:
bool(true)
bool(false)
二、判断变量是否为NULL
1)当变量赋值为 NULL 时, isset() 也会返回 false。
实例:
$var1=NULL;var_dump(isset($var1));
输出:
bool(false)
2)这里的 NULL 是指PHP的「常量」 NULL ,也就是空的意思,所以会返回 false;字符串类型的变量‘NULL’等,则会返回 true 。
实例:
$var1='null';$var2='NULL';$var3='/0';$var4=NULL;var_dump(isset($var1));var_dump(isset($var2));var_dump(isset($var3));var_dump(isset($var4));
输出:
bool(true)
bool(true)
bool(true)
bool(false)
三、同时判断多个变量
判断「多个变量」时,使用逗号
,
分隔。
从左往右逐个判断,只要有一个变量不存在或者为NULL或者被 unset() ,就会立刻停止,并会返回 false。
实例:
$var1='hello world';var_dump(isset($var1));var_dump(isset($var1,$var2));
输出:
bool(true)
bool(false)
四、unset()释放变量
unset() 函数「释放变量」后, isset() 也会返回 false。
实例:
$var1='hello world';var_dump(isset($var1));unset($var1);var_dump(isset($var1));
输出:
bool(true)
bool(false)
五、判断数组元素是否存在
实例:
$array1=array('a','b');var_dump(isset($array1[0]));
输出:
bool(true)
六、判断对象属性是否存在
isset() 可以判断对象的「公有成员」,但无法判断「私有成员」;因为私有成员外部不可见,也没办法调用。
实例:
classClass1{public$var1='hello public';private$var2='hello private';}$class1=newClass1();var_dump(isset($class1->var1));var_dump(isset($class1->var2));
输出:
bool(true)
bool(false)
七、三元表达式
扩展一个 isset() 配合三元表达式的使用方式
$result=isset($_GET['value'])?$_GET['value']:'';
这行代码的意思是:如果接收到参数 value 的值了,就赋值给 $result,否则就给 $result 赋值为空 ‘’。
版权归原作者 士别三日wyx 所有, 如有侵权,请联系我们删除。