Heim > Backend-Entwicklung > PHP-Tutorial > empty和isset的区别

empty和isset的区别

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
Freigeben: 2016-07-29 08:57:46
Original
3453 Leute haben es durchsucht

相信作为新手的我们,每次用到empty()和isset()时等都会有这样的疑惑:这二者有何区别?什么时候需要用empty()?什么时候用isset()?今天我给大家说说二者的区别,以及二者的应用场景。

1.区别汇总:

区别一:empty()是函数,它具有函数的所有属性,有返回值,可以使用函数返回值作为参数,可以使用动态变量访问等;

isset()是语句,它是php一种固有的逻辑结构,如foreach,for,continue等,无法使用动态变量访问,也无法使用函数返回值作为参数;例子如下:

$a = 'empty';
$a('err');//TRUE
empty(intval('1fa'));//FALSE;
Nach dem Login kopieren

区别二:当$a定义后,不论它的值是0,false,null,''等空值,empty()的返回值均为true;isset()的返回值也为TURE,isset只在验证未曾定义的变量时才会返回false;

例如:

$a = 0;//'0',false,null,'','0.0'等空值
empty($a);//true
empty('aaa');//false
empty($b);//true
isset($a);//true
isset($b);//false,$b未定义
Nach dem Login kopieren

2.应用场景:

a.当判断一个变量是否定义时,可用isset();

应用:表单提交时用isset($_POST['submit'])的值来判定是否提交表单。

b.当判断一个变量是否为空时(不需要知道其是否赋值),可用empty();

应用:表单验证时,需验证必填项值是否为空。

c.当判断一个变量已经存在且不为空,可先用isset(),再用empty();

应用:文件上传时,需判断$_FILES已赋值,且不为空。

以上就介绍了empty和isset的区别,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage