PHP经验笔记
-
isset — 检测变量是否设置,并且不是NULL;
若变量存在且值不为NULL,则返回 TURE
若变量存在且其值为NULL或变量不存在,则返回 FALSE
结论
1. 当变量为空字符串、数值0和布尔值false时,isset全部返回true
2. 当变量不存在和变量存在且值为NULL时,isset返回false -
empty — 检查一个变量是否为空
- bool empty ( mixed $var )
当var存在,并且是一个非空非零的值时返回 FALSE 否则返回 TRUE.
以下的东西被认为是空的:- “” (空字符串)
- 0 (作为整数的0)
- 0.0 (作为浮点数的0)
- “0” (作为字符串的0)
- NULL
- FALSE
- array() (一个空数组)
- $var; (一个声明了,但是没有值的变量)
- 空字符串(’ ')、false、NULL和0是值相等而类型不相等。
- bool empty ( mixed $var )
-
php销毁变量的2种方法是什么(显示销毁)
- 使用unset()函数;
unset()并没有真正销毁变量中内存值,仅仅是切断了变量与内存之间的关系,并将变量名也给干掉了,但内存只要还被引用着就不会被释放; (而在PHP中对象的传值默认是引用传值) - 变量赋值为“NULL”;
- 变量名依然存在,但是内存值却被干掉了
- 隐式销毁,PHP是脚本语言,在代码执行完最后一行时,所有申请的内存都要释放掉
- 显式销毁,当对象没有被引用时就会被销毁,所以我们可以unset或为其赋值NULL;
- 使用unset()函数;