我在我的项目中使用PHP,当提交任何表单时,我需要检查输入是否为空,所以我使用这样的东西:
if(empty($myVar)) {
echo "Error";
} else {
echo "success";
}
但这似乎并不像我想要的那样工作,所以如果用户输入像“”这样的空白区域,那么引用之间只是空虚,但仍然是PHP显示成功消息而不是错误消息。
我也使用了isset($ var),但它是一样的,不能正常工作。
可能是什么问题?以及如何解决?
答案 0 :(得分:5)
使用trim
函数删除字符串开头和结尾的空格:
if(empty(trim($myVar))) {
echo "Error"
} else {
echo "success";
}
答案 1 :(得分:3)
echo empty(trim($myVar)) ? 'Error' : 'success';
答案 2 :(得分:2)
如果您想trim
$_POST
中的所有字段,请使用以下内容:
$_POST = array_map("trim", $_POST);
然后您可以查看empty()
。
但这只有在你有几个领域时才有用。对于一个,您应该直接使用empty(trim($var))
答案 3 :(得分:2)
我建议您在检查空白之前先修剪$ myVar,如下所示
if(empty(trim($myVar))) {
echo "Error";
} else {
echo "success";
}
这样做会从变量$ myVar中删除任何前导或尾随空格,然后检查变量是否为空。