isset():
功能:
用来检测变量是否设置,该函数返回的是否布尔值,即true/false。
isset()只能用于变量,因为传递任何其它参数都将造成解析错误。
若想检测常量是否已设置,可使用 defined() 函数。
如果已经使用 unset() 释放了一个变量之后,它将不再是 isset()。
同时要注意的是一个 NULL 字节("\0")并不等同于 PHP 的 NULL 常数
empty()
功能:
检查一个变量是否为空。
若变量不存在则返回 TRUE
若变量存在且其值为""、0、"0"、NULL、、FALSE、array()、var $var; 以及没有任何属性的对象,则返回 TURE
若变量存在且值不为""、0、"0"、NULL、、FALSE、array()、var $var; 以及没有任何属性的对象,则返回 FALSE
<?php
//isset()测试
$var="";
var_dump(isset($var)); //true
$var="test";
var_dump(isset($var)); //true
$var=0;
var_dump(isset($var)); //true
$var=array(); //true
var_dump(isset($var));
$var=array(1,2,3);
var_dump(isset($var)); //true
var_dump(isset($var[0])); //true
unset($var);
var_dump(isset($var)); //false
$var=null;
var_dump(isset($var)); //false
//empty()测试
$var="test";
var_dump(empty($var)); //false
$var="";
var_dump(empty($var)); //true
$var=0;
var_dump(empty($var)); //true
$var=null;
var_dump(empty($var)); //true
$var=array();
var_dump(empty($var)); //true
$var=array(1,2,3);
var_dump(empty($var)); //false
unset($var);
var_dump(empty($var)); //true
var_dump(empty($a)); //true
var_dump(empty(b)); //false 出错
$var=array('test'=>"");
var_dump(empty($var)); //false
var_dump(empty($var['test']));//true
$var=array('test'=>0);
var_dump(empty($var['test']));//true
?>