跳转到主内容
趣航编程网 - 趣学编程,启航技术之路!

php 相等性比较 以及 empty,isset, isnull

变量为空 以下的东西被认为是空的: “” (空字符串)0 (作为整数的0)0.0 (作为浮点数的0)“0” (作为字符串的0)NULLFALSEarray() (一个空数组)$var; (一个声明了,但是没有值的变量) 判断语句中空值返回false,以下代码不会产生任何输出,因为if 语句中的判断都为false:
$emptyList = ["", 0, 0.0, "0", NULL, FALSE, array(), $var, ]; foreach($emptyListas$val) { if ($val) { var_dump($val); } }
比较运算符:
==
与
===
==
只涉及到值的比较
var_dump(0 == '0.0'); //true var_dump(0 == ''); //true var_dump(0 == false); //true
===
同时涉及 值 与类型的比较, 更为严格
var_dump(0 === '0.0'); //false var_dump(0 === ''); //false var_dump(0 === false); //false
null 与 空值 通过
==
比较, 除了 “0” ,都返回true:
$emptyList = ["", 0, 0.0, "0", NULL, FALSE, array(), $var, ]; foreach($emptyListas$val) { var_dump($val == null); }
empty, isset, isnull 立即学习 “ PHP免费学习笔记(深入) ”; empty:检查一个变量是否为空
$emptyList = ["", 0, 0.0, "0", NULL, FALSE, array(), $var, ]; foreach ($emptyList as $e) { var_dump(empty($e)); } /* bool(true) bool(true) bool(true) bool(true) bool(true) bool(true) bool(true) bool(true) */
isset:判断变量var 存在并且值不是 NULL 则返回 TRUE,否则返回 FALSE。
$var = 1; var_dump(isset($var)); // trueunset($var); var_dump(isset($var)); // false$var = null; var_dump(isset($var)); // false
isnull: 判断变量是否 为 null , 等价于
=== null
。 注意 空值之间的
==
比较不一定返回 true :
// 不具传递性var_dump(0 == '0'); // truevar_dump('' == 0 ); // truevar_dump('0' == ''); // falsevar_dump(0 == []); // false
最佳实践 空值判断使用 empty 判断; isset 无法判断存在但值为null的变量; php
==
和
===
差别在于后者同时进行类型相等判断 ').addClass('pre-numbering').hide(); $(this).addClass('has-numbering').parent().append($numbering); for (i = 1; i ').text(i)); }; $numbering.fadeIn(1700); }); }); 以上就介绍了php 相等性比较 以及 empty,isset, isnull,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

相关文章