所以我有这段代码,其中一部分是一个表单,所有字段都是绝对必需的。
我只是找不到明确的文档来满足我验证所有内容的需求。
我会做这样的事情吗?
$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 个必填字段
你可以做:
if (isset($foo, $bar, $lorem, $ipsum)) {.....}
为您节省一步。
http://php.net/manual/en/function.isset.php
请记住,如果你有一个空字符串,isset将返回true。 所以,从技术上讲
isset($_POST['foo'])
如果 foo 以空值传入,则返回 true:
foo=&bar=&...etc.
也
isset(array())
返回真;
如果 " 不是其中一个变量的有效值,则需要执行以下操作:
$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...
}
您基本上检查变量是否已传递,以及变量是否未设置为 "。
希望有帮助。