回答
ISSET检查变量是否已设置。换句话说,它检查变量是否为除NULL以外的值或未赋值。如果变量存在并且具有非NULL值,则返回返回TRUE
。这意味着分配了“”,0,“0”或FALSE的变量已设置,因此TRUE
为ISSET
。
EMPTY检查变量是否为空。 Empty被解释为:“”(一个空字符串),0(整数),0.0(浮点数),“0”(字符串),NULL,FALSE,array()(一个空数组)和“$ var;” (变量声明,但没有一类的值。
欲了解更多信息,请参阅this article
”“不是空的。 ““ 是空的。 – EresDev
您可以举一个例子,其中isset为true,但空为false。还有一个例子,isset是假的,但是空的是真的? – Unbreakable
类型比较表给出了所有问题的答案对这些运营商
Isset回报如果变量未设置,则为false;如果变量设置为非空,则返回true。
!empty返回true如果变量已设置且不为空Em pty字符串,空数组,“0”,0和false被定义为空。
Source :http://php.net/manual/en/types.comparisons.php此页显示empty()
,is_null()
,isset()
的比较。
还有一句话。 empty()
检查变量是否也存在。即如果我们对未声明的变量执行empty()
,我们不会收到错误,empty()
返回'true'。因此,如果接下来我们需要检查变量是否为空,我们可能会避免isset()
。
所以
isset($var) && !empty($var)
将等于
!empty($var)
- 1. isset和empty有什么区别?
- 2. if(isset($ a))和if($ a)在php中有什么区别?
- 3. php isset,empty,null,=“”
- 4. PHP中。=和+ =有什么区别?
- 5. PHP中sys_temp_dir和upload_tmp_dir有什么区别?
- 6. 在PHP中!==和!=有什么区别?
- 7. PHP中的 - >和::有什么区别?
- 8. php cli和php cgi有什么区别?
- 9. php 4和php 5有什么区别?
- 10. .empty()。append()和.html()之间有什么区别?
- 11. if(!Variable)和if(isset($ variable))有什么区别?
- 12. 有什么区别`和$(Bash中有什么区别?
- 13. VBA(Excel)中= Empty和IsEmpty()之间的区别是什么?
- 14. PHP和Java有什么区别?
- 15. <?有什么区别?和<?php
- 16. JSP,PHP,HTML5和JavaScript有什么区别?
- 17. Php:|有什么区别?和||运营商
- 18. PHP header和Javascript window.location有什么区别?
- 19. phpinfo();有什么区别?和php -i?
- 20. javascript和PHP cookies有什么区别?
- 21. strlen()== 0和empty()之间有区别吗?
- 22. cakephp!空白和isset区别?
- 23. PHP:if(!$ val)VS if(empty($ val))。有什么区别吗?
- 24. php:if($ some_var!='')vs. isset/empty
- 25. 有什么区别? :和||
- 26. &&和||有什么区别?
- 27. “/”和“/ *”有什么区别?
- 28. 有什么区别:。!和:r!?
- 29. ==和===有什么区别?
- 30. Appender和〜有什么区别?
你读过两者的手册? [Here](http://www.php.net/isset)和[here](http://www.php.net/empty) – George
请阅读http://kunststube.net/isset/此外。谢谢@deceze – hek2mgl
'isset();'检查变量是否字面设置,因为变量实际上指向某个值。 'empty();'检查变量指向的值是否包含任何内容。 – AlphaDelta