PHP的isset()函数 一般用来检测变量是否设置 ,PHP的isset()函数 一般用来检测变量是否设置

事例: empty(卡塔尔国 与 isset(卡塔尔国 的三个简易比较

if(empty($id)) $id=1; - 若 id=0 ,id 也会为1 
if(!isset($id)) $id=1; - 若 id=0 ,id 不会为1 
if(empty($id)) $id=1; - 若 id=0 ,id 也会为1 
if(!isset($id)) $id=1; - 若 id=0 ,id 不会为1

isset(卡塔尔(قطر‎检查实验变量是还是不是设置 

动用 unset(卡塔尔国 释放变量之后,它将不再是 isset(State of Qatar。
PHP函数isset(卡塔尔只好用来变量,传递任何其余参数都将招致深入剖析错误。
检查测量检验常量是或不是已设置可利用 defined(卡塔尔 函数。

$var = 0; 
// 结果为 true,因为 $var 为空 
if (empty($var)) { 
echo '$var is either 0 or not set at all'; 
} 
// 结果为 false,因为 $var 已设置 
if (!isset($var)) { 
echo '$var is not set at all'; 
} 

假设变量为空字符串,则empty(卡塔尔(قطر‎会回到TRUE,isset(卡塔尔(قطر‎会回到TRUE;
万一变量未定义,则empty(卡塔尔国会回去TRUE,isset(State of Qatar会回到FLASE;

那意味着,大家在选择变量管理函数时,当该变量可能现身0的值,使用 empty(卡塔尔要小心,那时候用 isset 代替它更加精雅培些。 
当叁个php页面包车型客车 U路虎极光L 尾巴部分参数现身 id=0
时(比方:test.php?id=0),试相比:

更多表达:

一旦已经运用 unset(卡塔尔国 释放了三个变量之后,它将不再是 isset(卡塔尔(قطر‎。若使用
isset(State of Qatar 测验二个被安装成 NULL 的变量,将重返 FALSE。同期要在乎的是贰个NULL 字节(”?”)并不相同等 PHP 的 NULL 常数。 
警戒: isset(卡塔尔国只可以用于变量,因为传递任何此外参数都将形成拆解解析错误。若想检查评定常量是不是已安装,可选择defined(卡塔尔(قطر‎函数。

越来越多表明:

意义:检查四个变量是否为空 

注: 由于那是三个言语布局而非函数,由此它不恐怕被变量函数调用。
注: empty(卡塔尔只检查评定变量,检验任何非变量的事物都将造成深入解析错误。换句话说,前面的讲话将不会起成效:
empty(addslashes($name卡塔尔(قطر‎卡塔尔(قطر‎。
上边是我们测量试验过的一段isset与empty函数详细例子的代码,看完那一个大概就基本上了:

返回值: 

返回值:

描述bool empty( mixed var ) 
假设 var 是非空或非零的值,则 empty(卡塔尔(قطر‎ 返回FALSE。换句话说,””、0、”0″、NULL、FALSE、array(卡塔尔、var $var;
以至从未别的性质的对象都将被以为是空的,假使 var 为空,则赶回
TRUE。 
手册中对isset(卡塔尔国的说明如下: 

if(empty($id)) $id=1; 
print $id; // 得到 1 
if(!isset($id)) $id=1; 
print $id; //得到 0
$id=0; 
empty($id)?print "It's empty .":print "It's $id ."; 
//结果:It's empty . 
print "<br>"; 
!isset($id)?print "It's empty .":print "It's $id ."; 
//结果:It's 0 . 

那象征,大家在利用变量管理函数时,当该变量恐怕现身0的值,使用 empty(卡塔尔国要小心,此时用 isset 取代它更明智一些。
当四个php页面包车型大巴 ULacrosseL 尾巴部分参数出现 id=0
时(举个例子:test.php?id=0),试相比较:

手册中对empty(State of Qatar的分解如下: 

empty(State of Qatar的归来值=!(boolean卡塔尔var,但不会因为变量未定义而产生警报新闻。参见转换为布尔值获取越多新闻。
empty(State of Qatar 只好用来变量,传递任何别的参数都将招致Paser error而停下运转。
检查实验常量是还是不是已设置可利用 defined(State of Qatar 函数。

若变量海市蜃楼则赶回 TRUE 
若变量存在且其值为””、0、”0″、NULL、、FALSE、array(卡塔尔(قطر‎、var $var;
以致从未其余性质的靶子,则赶回 TURE 
若变量存在且值不为””、0、”0″、NULL、、FALSE、array(卡塔尔国、var $var;
以致从未别的性质的靶子,则赶回 FALSE 
版本:PHP 3, PHP 4, PHP 5 
越多表达: 
empty(State of Qatar的回来值=!(boolean卡塔尔(قطر‎var,但不会因为变量未定义而发出警示消息。参见转变为布尔值获取愈来愈多音信。 
empty() 只好用于变量,传递任何别的参数都将变成Paser
error而终止运营。 
检查实验常量是或不是已安装可选择 defined(卡塔尔(قطر‎ 函数。 
事例: empty(卡塔尔(قطر‎ 与 isset(卡塔尔国 的二个简短相比

即使 var 存在则赶回 TRUE,不然重回 FALSE。

当要
判定一个变量是不是已经宣称的时候 能够行使 isset 函数 
当要 判别七个变量是不是已经授予数据且不为空 能够用 empty 函数 
当要 判定 三个变量 存在且不为空 先isset 函数 再用 empty
函数

若变量不设有则赶回 FALSE
若变量存在且其值为NULL,也回到 FALSE
若变量存在且值不为NULL,则赶回 TURE
还要检查五个变量时,种种单项都合乎上一条要求时才回来 TRUE,不然结果为
FALSE
版本:PHP 3, PHP 4, PHP 5

可分别运营以下代码检查评定上述测度:

<?php 
$var = 0; 
// 结果为 true,因为 $var 为空 
if (empty($var)) { 
echo '$var is either 0 or not set at all'; 
} 
// 结果为 false,因为 $var 已设置 
if (!isset($var)) { 
echo '$var is not set at all'; 
} 
?>

功能:检查实验变量是或不是设置 

返回值:

返回值: 

PHP的empty(卡塔尔函数 决断值为否为空

注: 由于这是多少个语言构造而非函数,因而它不恐怕被变量函数调用。 
注: empty()只质量评定变量,检测任何非变量的事物都将促成深入分析错误。换句话说,前边的话语将不会起作用:
empty(addslashes($name卡塔尔(قطر‎卡塔尔。 

手册中对isset(卡塔尔的阐述如下:

在选用 php 编写页面程序时,作者日常使用变量管理函数剖断 php
页面尾巴部分参数的某部变量值是或不是为空,开始的时候本人习贯了应用 empty()函数,却开采了一些难题,因而改用 isset(卡塔尔国 函数,难点不再。 
一概而论,empty(卡塔尔国 决断一个变量是还是不是为“空”,isset(卡塔尔(قطر‎判定多个变量是还是不是业已安装。正是这种所谓的“顾名思义”,令我起来时走了些弯路:当一个变量值等于0时,empty(卡塔尔也会创造(True),因此会生出
一些想不到。原本,empty(卡塔尔(قطر‎ 和 isset(卡塔尔(قطر‎尽管都以变量管理函数,它们都用来判定变量是不是已经陈设,它们却是有自然的不一样:empty还可能会检查测量试验变量是还是不是为空、为零。当叁个变量值为0,empty(State of Qatar以为这些变量同等于空,即一对一于还没安装。 
比如检查评定 $id 变量,当 $id=0 时,用empty(卡塔尔 和 isset(卡塔尔(قطر‎ 来检查测验变量 $id
是或不是已经计划,两都将重回不相同的值—— empty(State of Qatar 认为并未配置,isset(卡塔尔能够收获 $id 的值:

可分别运转以下代码检查测验上述推断:

if(empty($id)) $id=1; 
print $id; // 得到 1 
if(!isset($id)) $id=1; 
print $id; //得到 0 

一旦变量为0,则empty(卡塔尔会回来TRUE,isset(State of Qatar会回来TRUE;

格式:bool empty ( mixed var ) 

发表评论

电子邮件地址不会被公开。 必填项已用*标注

相关文章