empty()函数验证所有这些情况:
1.var = null
2.var =空字符串“”/“”
3.var =未设置
验证使用示例(我应该添加更多代码进行验证还是空()足够吗?):
if(!empty($userName)){
//some code
}
else{
echo "not valid user name"
}
修改 :isset()
之前使用empty()
还是empty()
包含isset()
个案?
答案 0 :(得分:7)
是的,确实如此。它位于php documentation。
答案 1 :(得分:4)
鉴于以下情况,我认为它符合您的需求:
考虑以下事项 是空的:
* "" (an empty string) * 0 (0 as an integer) * "0" (0 as a string) * NULL * FALSE * array() (an empty array) * var $var; (a variable declared, but without a value in a class)
编辑:
应该在empty()或之前使用isset() empty()包括isset()case?
这取决于使用情况。如果您处于无法确定$username
存在的位置,则需要首先使用isset来避免关于不存在的变量的错误。另一方面,如果您确定$username
将始终存在,那么您可以尝试测试空值并将其留在那里。
答案 2 :(得分:1)
如果你想检查用户是否已经填写任何内容,那么empty()就可以了。另一方面,如果您想检查用户是否填写了超过3个字符(strlen())或仅使用字母数字字符(preg_match())的用户名,则需要更多工具;)