所以我得到了这段代码,其中一部分是表格,所有字段都是绝对必需的。
我无法找到明确的文档来满足我验证所有内容的需求。
我会做这样的事吗?$foo = $_POST['foo'];
$bar = $_POST['bar'];
$lorem = $_POST['lorem'];
$ipsum = $_POST['ipsum'];
$isSet = array($foo, $bar, $lorem, $ipsum);
if(isset($isSet)) { /* Do the stuff */ }
还是有更好的方法?我真的不想做
if(isset($foo) && isset($bar) && isset($lorem)........
因为我有大约12个需要的字段
答案 0 :(得分:5)
你可以这样做:
if (isset($foo, $bar, $lorem, $ipsum)) {.....}
为您节省一步。
答案 1 :(得分:2)
请记住,如果您有一个空字符串,则isset将返回true。所以,技术上
isset($_POST['foo'])
如果使用空值传入foo,将返回true:
foo=&bar=&...etc.
另外,
isset(array())
返回true;
如果“”不是其中一个变量的有效值,则需要执行以下操作:
$requiredFields = array('foo', 'bar', 'lorem', 'ipsum');
$allValid = true;
foreach ($requireFields => $fieldName) {
if (isset($_POST[$fieldName]) && $_POST[$fieldName] != "") {
$allValid = $allValid && true;
} else {
$allValid = $allValid && false;
}
}
if ($allValid) {
//...success...
} else {
//...failed...
}
您基本上检查变量是否已通过,以及变量未设置为“”。
希望有所帮助。