我有一个后变量,必须检查它是否为空。我看一下这个变量的值:
print_r($_POST['arrayId']);
并打印出预期值。 但是,如果我这样做:
if(!empty($_POST['arrayId'])) {
// some stuff
} else {
echo "f";
}
打印,并且不应该执行应该执行的代码。这怎么可能?
答案 0 :(得分:3)
这样做,它将检查post数组中是否存在键,而不管值是什么。也适用于NULL
,false
,0
以及被视为“空”值的任何其他值......
if(array_key_exists('arrayId', $_POST)) {
// some stuff
} else {
echo "f";
}
答案 1 :(得分:1)
empty()
, 0
将返回true。
改变:
if(isset($_POST['arrayId']) && strlen($_POST['arrayId'])) {
// some stuff
} else {
echo "f";
}
答案 2 :(得分:-1)
验证输入'$ var'到empty()函数
空($变种)
如果var存在并且具有非空的非零值,则返回FALSE。 否则返回TRUE。
以下内容被认为是空的:
“”(空字符串)0(0作为整数) 0.0(0作为浮点数)“0”(0作为字符串)NULL FALSE array()(空数组)$ var; (声明的变量,但没有值)