检查PHP中至少一个字段是否为空

Kar*_*rem 0 php

我有这些领域: weight, size_1, size_2, size_3

如何检查以填充这些字段中的至少一个.

如果它低于最小值那么它应该输出"错误,填充一个至少"

我可以用long if语句执行此操作,检查为空,但是它们是更好的方法吗?

这些字段来自表单提交,所以它看起来像是这样:

$_POST['weight'];
$_POST['size_1'];
$_POST['size_2'];
$_POST['size_3'];
Run Code Online (Sandbox Code Playgroud)

Nea*_*eal 5

假设它们都在一个数组中:

function check_for_input($array){
     foreach($array as $value){
           if($value != "") return true;
     }
     return false;
}
Run Code Online (Sandbox Code Playgroud)

像这样使用它:

if(check_for_input($_POST)){ /*...*/ }
else { die("Error, fill one at least"); }
Run Code Online (Sandbox Code Playgroud)

使用过滤器更新:

假设它们都在一个数组中:

function check_for_input($array, $filter){
     foreach($array as $key=>$value){
           if($value != "" && in_array($key, $filter)){ 
                return true;
           }
     }
     return false;
}
Run Code Online (Sandbox Code Playgroud)

像这样使用它:

$filter = array('weight', 'size_1', 'size_2', 'size_3', /*...*/);
if(check_for_input($_POST, $filter)){ /*...*/ }
else { die("Error, fill one at least"); }
Run Code Online (Sandbox Code Playgroud)