如何缩短php代码?

如何缩短php代码?,php,Php,如果没有那么多if循环,我如何修改代码使其工作得“更智能”?我正在附上我迄今为止所做的尝试 $error1 = $error2 = $error3 = $error4 = $error5 = $error6 = $error7 = $error8 = ""; if ($_SERVER["REQUEST_METHOD"] == "POST") { if (empty($_POST["fname"])) { $error1 = "fill in fname"; }

如果没有那么多if循环,我如何修改代码使其工作得“更智能”?我正在附上我迄今为止所做的尝试

$error1 = $error2 = $error3 = $error4 = $error5 = $error6 = $error7 = $error8 = "";

if ($_SERVER["REQUEST_METHOD"] == "POST") {

    if (empty($_POST["fname"])) {
      $error1 = "fill in fname";
    }  
    if (empty($_POST["lname"])) {
      $error2 = "fill in lname";
    } 
    if (empty($_POST["street"])) {
      $error3 = "fill in street";
    }  
    if (empty($_POST["city"])) {
      $error4 = "fill in city";
    } 
    if (empty($_POST["postcode"])) {
      $error5 = "fill in postcode";
    } 
    if (empty($_POST["country"])) {
      $error6 = "fill in country";
    } 
    if (empty($_POST["email"])) {
      $error7 = "fill in email";
    } 
    if (empty($_POST["phone"])) {
      $error8 = "fill in phone";
    }
}
提前谢谢

请检查这个

$formfields = array('fname','lname','street','city','postcode','country','email','phone');
$errMsg = "";
 if(isset($_POST) && count($_POST)>0){
    foreach($_POST as $key => $val){
        if(in_array($key, $formfields)){
            if (empty($_POST[$key])) { $errMsg[] = "fill in ". $key; }  
        }
    }
 }

 if(count($errMsg)>0)
    echo implode("<br/>",$errMsg);
$formfields=array('fname','lname','street','city','postcode','country','email','phone');
$errMsg=“”;
如果(isset($\u POST)和计数($\u POST)>0){
foreach($\发布为$key=>$val){
if(在数组中($key,$formfields)){
如果(空($_POST[$key]){$errMsg[]=“填写”..$key;}
}
}
}
如果(计数($errMsg)>0)
回波内爆(“
”,$errMsg);
请检查此项

$formfields = array('fname','lname','street','city','postcode','country','email','phone');
$errMsg = "";
 if(isset($_POST) && count($_POST)>0){
    foreach($_POST as $key => $val){
        if(in_array($key, $formfields)){
            if (empty($_POST[$key])) { $errMsg[] = "fill in ". $key; }  
        }
    }
 }

 if(count($errMsg)>0)
    echo implode("<br/>",$errMsg);
$formfields=array('fname','lname','street','city','postcode','country','email','phone');
$errMsg=“”;
如果(isset($\u POST)和计数($\u POST)>0){
foreach($\发布为$key=>$val){
if(在数组中($key,$formfields)){
如果(空($_POST[$key]){$errMsg[]=“填写”..$key;}
}
}
}
如果(计数($errMsg)>0)
回波内爆(“
”,$errMsg);
试试这个:

$errors = array();
$inputs = array("fname", "lname", "street", "city", "postcode", "country", "email", "phone");
if ($_SERVER["REQUEST_METHOD"] == "POST") {
    foreach($_POST as $key => $arg) {
        if(in_array($key, $inputs) && empty($arg)){
            $errors[] = "fill in " . $key;
        }
    }
}
试试这个:

$errors = array();
$inputs = array("fname", "lname", "street", "city", "postcode", "country", "email", "phone");
if ($_SERVER["REQUEST_METHOD"] == "POST") {
    foreach($_POST as $key => $arg) {
        if(in_array($key, $inputs) && empty($arg)){
            $errors[] = "fill in " . $key;
        }
    }
}

例如8个变量
$error1
$error2
等,您可以创建错误数组
$errors=[]
并在if语句中向该数组添加错误,例如8个变量
$error1
$error2
等,您可以创建错误数组
$errors=[]
并在if语句中向该数组添加错误