PHP中empty,isset,is_null用法和区别
脚本之家 / 编程助手:解决程序员“几乎”所有问题!
脚本之家官方知识库 → 点击立即使用
1.empty用法
bool empty ( mixed var)
如果 var 是非空或非零的值,则 empty() 返回 FALSE。换句话说,""、0、"0"、NULL、FALSE、array()、var $var; 以及没有任何属性的对象都将被认为是空的,如果 var 为空,则返回 TRUE
2.isset()
isset -- 检测变量是否设置
描述
bool isset ( mixed var [, mixed var [, ...]])
如果 var 存在则返回 TRUE,否则返回 FALSE。
如果已经使用 unset() 释放了一个变量之后,它将不再是 isset()。若使用 isset() 测试一个被设置成 NULL 的变量,将返回 FALSE。同时要注意的是一个 NULL 字节("0")并不等同于 PHP 的 NULL 常数。
注意:如果变量不存在,isset()和empty()都不会报错;is_null(),is_numeric()会报错
如何区别如下数组中 [0,'',null] 三个元素?(1)区别0:
(2)区别''
(3)区别null
另外在做表单提交的时候可能经常要检测一个变量是否存在,假如$_REQUEST['status'] = 0;使用empty($_REQUEST['status'])返回true,但是使用isset($_REQUEST['status']) 判断就不是空
3. is_null():
bool is_null ( mixed $var ) (php.net官方文档的函数定义)
当参数满足下面三种情况时,is_null()将返回TRUE,其它的情况就是FALSE
1、它被赋值为NULL
2、它还没有赋值
3、它未定义,相当于unset(),将一个变量unset()后,不就是没有定义吗
让我们来看一些例子:
1 2 3 4 5 6 7 8 9 10 11 12 | $myvar = NULL; var_dump( is_null ( $myvar )); // TRUE $myvar1 ; var_dump( is_null ( $myvar1 )); // TRUE Notice: Undefined variable $num = 520; unset( $num ); var_dump( is_null ( $num )); //TRUE Notice: Undefined variable var_dump( is_null ( $some_undefined_var )); //TRUE Notice: Undefined variable $myvar = 0; is_null ( $myvar ); // FALSE $myvar = FALSE; is_null ( $myvar ); // FALSE $myvar = '' ; is_null ( $myvar ); // FALSE |
微信公众号搜索 “ 脚本之家 ” ,选择关注
程序猿的那些事、送书等活动等着你
相关文章
PHP入门教程之会话控制技巧(cookie与session)
这篇文章主要介绍了PHP入门教程之会话控制技巧,结合实例形式分析了cookie与session的具体使用方法与相关注意事项,需要的朋友可以参考下2016-09-09PHP针对伪静态的注入总结【附asp与Python相关代码】
这篇文章主要介绍了PHP针对伪静态的注入,结合实例形式总结分析了php针对伪静态的常见注入情况,并附带asp与Python的相关操作代码,对于php程序安全有一定借鉴价值,需要的朋友可以参考下2017-08-08
最新评论