为什么$ _FILES的函数is_null不准确?

时间:2012-09-18 06:58:10

标签: php

我想测试用户是否选择了某个文件,因此我测试了$_FILES['input_name']['name']是否为空。

我使用了PHP函数is_null($_FILES['input_name']['name']),但是代码转到了它应该选择文件的语句!

所以我用$_FILES['input_name']['name'] != ""替换了我的测试。

那么为什么is_null与$ _FILES ['name']不准确?

5 个答案:

答案 0 :(得分:3)

别忘了,null与“”不一样。

“”表示空字符串,而null表示未初始化的字符串。

答案 1 :(得分:3)

Is_null与''(空字符串)不同。

当var_dumping值时,这很容易看到!

答案 2 :(得分:2)

这意味着$ _FILES数组未初始化为NULL值数组。我认为你必须使用empty()代替

http://php.net/manual/en/function.empty.php

答案 3 :(得分:1)

如果var为null,则is_null(var)返回TRUE,否则返回FALSE。

if(is_null($_FILES['input_name']['name'])){
 block of code;//file name is null
}

答案 4 :(得分:0)

尝试使用empty()函数代替== ""