PHP isset()函数使用方法详解
isset() 函数可以检测「变量是否存在」并非NULL。常用来判断变量是否被定义,以避免变量未定义而报错。
语法
bool isset( $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() 可以判断对象的「公有成员」,但无法判断「私有成员」;因为私有成员外部不可见,也没办法调用。
实例:
class Class1{
public $var1 = 'hello public';
private $var2 = 'hello private';
}
$class1 = new Class1();
var_dump(isset($class1->var1));
var_dump(isset($class1->var2));输出:
bool(true)
bool(false)
七、三元表达式
扩展一个 isset() 配合三元表达式的使用方式
$result = isset($_GET['value']) ? $_GET['value'] : '';
这行代码的意思是:如果接收到参数 value 的值了,就赋值给 $result,否则就给 $result 赋值为空 ‘’。
到此这篇关于PHP isset()函数使用方法详解的文章就介绍到这了,更多相关PHP isset()函数内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
PHP 杂谈《重构-改善既有代码的设计》之一 重新组织你的函数
我把我比较喜欢的和比较关注的地方写下来和大家分享。上次我写了篇《php 跟老大的对话》。还是有很多疑问,这书帮了我不少的忙2012-04-04
PHP HTML JavaScript MySQL代码如何互相传值的方法分享
有时候我们需要在PHP HTML JavaScript中互相传值,那么就可以参考下面的方法,asp,asp.net都是一样的思路与原理,需要的朋友可以参考下2012-09-09


最新评论