今天修改数据库相关的php函数时用到了
if ($v=='')来判断是否为空值,如果为空就跳过
结果发现数字型的0也给跳过了
于是百度发现了以下方法区分,特此记录
<?php
$a = 0;
$b = '';
$c = null;
// 区分 0、''、null
// 1、方法一
if ($a !== '') {
echo '0和null';
} else {
echo '空字符串';
}
// 2、方法二
if ($a !== null) {
echo '0和空字符串';
} else {
echo 'null';
}
// 3、方法三
if (strlen($a) > 0) {
echo '0';
} else {
echo '空字符串和null';
}
// 以上三种方法都只能把其中一个和另外两个区分出来,如果需要3个单独区分,需要结合使用