本节内容:
PHP isset和empty
先看如下的判断语句:
在$switchType为空的情况下赋值为all,发现当$switchType为0的时候会发现$switchType也被赋值为all。
因此,可以认定php中0这个值在empty函数中会被作为空来判定,后来该为用isset就解决了此问题。
根据此问题,通过实际例子详细来解释下empty和issset两者的区域和用法。
一、empty和isset函数详解
1、empty函数
用途:检测变量是否为空
判断:如果 var 是非空或非零的值,则 empty() 返回 FALSE。换句话说,""、0、"0"、NULL、FALSE、array()、var $var; 以及没有任何属性的对象都将被认为是空的,如果 var 为空,则返回 TRUE。来源手册:http://php.net/manual/zh/function.empty.php
注意:empty() 只检测变量,检测任何非变量的东西都将导致解析错误。换句话说,后边的语句将不会起作用: empty(addslashes($name))
2、isset函数
用途:检测变量是否设置
判断:检测变量是否设置,并且不是 NULL。如果已经使用 unset() 释放了一个变量之后,它将不再是 isset()。若使用 isset() 测试一个被设置成 NULL 的变量,将返回 FALSE。同时要注意的是一个NULL 字节("