作者:小遥2502881765 | 来源:互联网 | 2024-11-20 15:41
empty,isset首先都会检查变量是否存在,然后对变量值进行检测。而is_null只是直接检查变量值,是否为null,因此如果变量未定义就会出现错误!检测一个变量是否是null
empty,isset首先都会检查变量是否存在,然后对变量值进行检测。而is_null 只是直接检查变量值,是否为null,因此如果变量未定义就会出现错误!
以后:
检测一个变量是否是null 用:is_null,但如果变量未定义用它检测会出错。//判断null用is_null(),如果变量未定义,则报错
检测变量是否定义可以用:isset ,但是如果一个变量值是:null, 则它会返回false . //判断变量是否定义,用isset,如果变量值是null则返回false
empty 与 isset区别
1、对待$c = null,的处理上 isset 返回false,empty 返回true
unset是直接删除变量
$a="hello";
$b= $a;
// echo $b.‘sss‘.$a; // echo hello
unset($b);
echo $b; //unset 是去掉变量定义,所以输出会报错
变量相互赋值:
//变量相互赋值
$a="hello";
$b= $a;
echo $b.‘sss‘.$a; // echo hello
$a = "world";
echo $b.$a; //输出 hello world 说明变量相互赋值是 拷贝一个副本
unset($b);
echo $b; //unset 是去掉变量定义,所以输出会报错
//对象相互赋值
class A{
public $num=100;
}
$a = new A();
$b = $a; //指向同一个对象
$a->num=200;
echo $b->num; //输出200
综述:变量相互赋值,是拷贝副本。如果变量是对象,相互赋值是指向同一个对象
相关链接:
http://www.cnblogs.com/chengmo/archive/2010/10/18/1854258.html
php的is_null+empty+isset+unset