php中几个函数的比较(读手册小总结)
时间:2006-04-14 来源:guffaw
今天在读PHP手册的时候发现有几个函数很有意思,在这里作个比较。总结的有什么不好的地方请大家多提意见。
这些函数是:empty(), isset(), is_null()。
第一个是:empty()
功能:
原型:bool empty ( mixed var)
如果 var 是非空或非零的值,则
empty() 返回
FALSE。
这里指的“空”意思是 ""、0、"0"、NULL、FALSE、array()、var $var;没有任何属性的对象都将被认为是空的.
如果
var 为空,则返回 TRUE.
除了当变量没有置值时不产生警告之外,empty() 是
(boolean) var
的反义词.
注: 由于这是一个语言结构而非函数,因此它无法被变量函数调用。
注:
empty() 只检测变量,检测任何非变量的东西都将导致解析错误。换句话说,后边的语句将不会起作用:
empty(addslashes($name)).
第二个是:isset()
功能:检测变量是否设置
原型:bool isset ( mixed var [, mixed var [, ...]])
如果 var 存在则返回 TRUE,否则返回 FALSE
如果已经使用 unset() (注2)释放了一个变量之后,它将不再是
isset()
若使用 isset()
测试一个被设置成 NULL 的变量,将返回 FALSE
要注意的是一个 NULL 字节("\0")并不等同于
PHP 的 NULL 常数
注意!!!
isset()
只能用于变量,因为传递任何其它参数都将造成解析错误。若想检测常量是否已设置,可使用 defined() 函数来检测.
这个函数同empty()一样,是一个语言结构而非函数,因此它无法被变量函(注1)调用.
在这里我把这两个函数对比一下,这样会更清楚一下
第三个是:is_null()
功能:检测变量是否为 NULL
原型:bool is_null ( mixed var)
如果 var 是null则返回 TRUE,否则返回 FALSE。
查看null类型获知变量什么时候被认为是 NULL,而什么时候不是。
注释:
(1)变量函数,指
PHP 支持变量函数的概念。这意味着如果一个变量名后有圆括号,PHP 将寻找
与变量的值相同的函数,并且将尝试执行它。除了别的事情以外,这个可以被
用于实现回调函数,函数表等等.
变量函数不能用于语言结构,例如:isset(), empty(), include(), require()
printf()等.
(2)函数unset()这个函数按照我个人的理解应该是截断了变量名字和 变量值之间的联系
例如:我声明了一个变量,
$a = "abc";
当我用unset()这个函数时unset($a),那没发生了什么呢?
我想应该是这样的(如图)
就到这吧!
这是一些练习题:
连接:
http://www.blueshoes.org/en/developer/syntax_exam/
这些函数是:empty(), isset(), is_null()。
第一个是:empty()
功能:
原型:bool empty ( mixed var)
如果 var 是非空或非零的值,则
empty() 返回
FALSE。
这里指的“空”意思是 ""、0、"0"、NULL、FALSE、array()、var $var;没有任何属性的对象都将被认为是空的.
如果
var 为空,则返回 TRUE.
除了当变量没有置值时不产生警告之外,empty() 是
(boolean) var
的反义词.
注: 由于这是一个语言结构而非函数,因此它无法被变量函数调用。
注:
empty() 只检测变量,检测任何非变量的东西都将导致解析错误。换句话说,后边的语句将不会起作用:
empty(addslashes($name)).
第二个是:isset()
功能:检测变量是否设置
原型:bool isset ( mixed var [, mixed var [, ...]])
如果 var 存在则返回 TRUE,否则返回 FALSE
如果已经使用 unset() (注2)释放了一个变量之后,它将不再是
isset()
若使用 isset()
测试一个被设置成 NULL 的变量,将返回 FALSE
要注意的是一个 NULL 字节("\0")并不等同于
PHP 的 NULL 常数
注意!!!
isset()
只能用于变量,因为传递任何其它参数都将造成解析错误。若想检测常量是否已设置,可使用 defined() 函数来检测.
这个函数同empty()一样,是一个语言结构而非函数,因此它无法被变量函(注1)调用.
在这里我把这两个函数对比一下,这样会更清楚一下
第三个是:is_null()
功能:检测变量是否为 NULL
原型:bool is_null ( mixed var)
如果 var 是null则返回 TRUE,否则返回 FALSE。
查看null类型获知变量什么时候被认为是 NULL,而什么时候不是。
注释:
(1)变量函数,指
PHP 支持变量函数的概念。这意味着如果一个变量名后有圆括号,PHP 将寻找
与变量的值相同的函数,并且将尝试执行它。除了别的事情以外,这个可以被
用于实现回调函数,函数表等等.
变量函数不能用于语言结构,例如:isset(), empty(), include(), require()
printf()等.
(2)函数unset()这个函数按照我个人的理解应该是截断了变量名字和 变量值之间的联系
例如:我声明了一个变量,
$a = "abc";
当我用unset()这个函数时unset($a),那没发生了什么呢?
我想应该是这样的(如图)
就到这吧!
这是一些练习题:
连接:
http://www.blueshoes.org/en/developer/syntax_exam/
相关阅读 更多 +