首页 >后端开发 >php教程 >php获取变量的状态

php获取变量的状态

WBOY
WBOY原创
2016-07-25 08:44:11879浏览

isset()
isset()-检测变量是否设置
语法:
bool isset (mixed $var [,mixed $var [,$....]])
说明:
如果var存在则返回true,否则返回false。
注意:
如果该变量之前已经被unset()了或被设置为null,则isset()将返回false。

unset()
unset()-销毁给定的变量
void unset (mixed $var [,mixed $...])
unset()函数的行为依赖于给定的变量的类型而有所不同。如果在函数中 unset()一个全局变量,则只是局部变量被销毁,而在调用环境中的变量将保持调用unset()之前一样的值。
如果想要unset()一个全局变量,可以使用$GLOBALS数组来实现:
unset($GLOBALS['bar']);
如果unset()一个通过引用传递的变量,则只是局部变量被销毁,而在调用环境中的变量将保持调用unset()之前一样的值。

  1. function foo(&$bar) {
  2. unset($bar);
  3. $bar = 'blah';
  4. }
  5. $bar = 'something';
  6. echo "$bar\n";
  7. foo($bar);
  8. echo "$bar\n";
  9. ?>
复制代码

以上例程会输出:

  1. something
  2. something
复制代码

如果在函数中unset()一个静态变量,那么在函数内部此静态变量之前将被销毁。但是,当再次调用此函数时,此静态变量将被复原为上次被销毁之前的值。

  1. function foo() {
  2. static $bar;
  3. $bar++;
  4. echo "Before unset:$bar, ";
  5. unset($bar);
  6. $bar = 23;
  7. echo "after unset:$bar\n";
  8. }
  9. foo();
  10. foo();
  11. foo();
  12. ?>
复制代码

以上例程会输出:

  1. Before unset: 1, after unset: 23
  2. Before unset: 2, after unset: 23
  3. Before unset: 3, after unset: 23
复制代码

empty()
empty()-检查一个变量是否为空
语法:
bool empty (mixed $var)
说明:
如果$var是非空或非零的值,则empty()返回false。比如""、0、"0"、null、false、array()、var $var,以及没有任何属性的对象都将被视为空。

php


声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn