Php 如何在一个函数中为3个数组设置1个条件?

Php 如何在一个函数中为3个数组设置1个条件?,php,arrays,multiple-conditions,Php,Arrays,Multiple Conditions,函数是这样工作的,但是我想得到一个条件,而不是3个条件 问题是如何将这3个条件转换为函数中相同3个数组的1个条件:Name、Nachname和Ort 谢谢你的帮助 function check($felder = array()) { $de = "<h2>Deine Eingaben:</h2>"; $probleme = array(); if ($_SERVER["REQUEST_METHOD"] == "POST") { if (empty($felde

函数是这样工作的,但是我想得到一个条件,而不是3个条件 问题是如何将这3个条件转换为函数中相同3个数组的1个条件:Name、Nachname和Ort

谢谢你的帮助

function check($felder = array()) {

$de = "<h2>Deine Eingaben:</h2>";
$probleme = array();


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


if (empty($felder["name"])) {
 $probleme['name2'] = 'n/a';
 $probleme['name'] = "Name ist auskunftspflichtig";
} else {
 $probleme['name2'] = test_input($felder["name"]);
 if (!preg_match("/^[a-zA-Z ]*$/",$probleme['name2'])) {
   $probleme['name'] .= "Nur buchstaben und Leerzeichen sind erlaubt";
 }
}

if (empty($felder["nachname"])) {
 $probleme['nachname2'] = 'n/a';
 $probleme['nachname'] = "Nachname ist auskunftspflichtig";
} else {
 $probleme['nachname2'] = test_input($felder["nachname"]);
 if (!preg_match("/^[a-zA-Z ]*$/",$probleme['nachname2'])) {
   $probleme['nachname'] .= "Nur buchstaben und Leerzeichen sind erlaubt";
 }
}

if (empty($felder["ort"])) {
 $probleme['ort2'] = 'n/a';
 $probleme['ort'] = "Ort ist auskunftspflichtig";
} else {
 $probleme['ort2'] = test_input($felder["ort"]);
 if (!preg_match("/^[a-zA-Z ]*$/",$probleme['ort2'])) {
   $probleme['ort'] .= "Nur buchstaben und Leerzeichen sind erlaubt";
 }
}

}
return $probleme;
}
不是吗

<?php

function check($felder = NULL)
{
    if ($felder === NULL) {
        $felder = array();
    }

    $de = '<h2>Deine Eingaben:</h2>';
    $probleme = array();

    // Keys in array:
    $keynames = array('name', 'nachname', 'ort');


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

        // For each keys:
        foreach ($keynames as $keyname) {

            if (empty($felder[$keyname])) {

                $probleme[$keyname.'2'] = 'n/a';
                $probleme[$keyname] = ucfirst($keyname).' ist auskunftspflichtig';

            } else {
                $probleme[$keyname.'2'] = test_input($felder[$keyname]);
                if ( ! preg_match('/^[a-zA-Z ]*$/', $probleme[$keyname.'2'])) {
                    $probleme[$keyname] .= 'Nur buchstaben und Leerzeichen sind erlaubt';
                }
            }

        }
    }

    return $probleme;
}
请试试这个

function check($felder = array()) {
  $de = "<h2>Deine Eingaben:</h2>";
  $probleme = array();
  if ($_SERVER["REQUEST_METHOD"] == "POST") {
    for ($i = 0; $i < count($felder); $i++) {
      if (empty($felder[$i])) {
          $probleme[$felder[$i].'2'] = 'n/a';
          $probleme[$felder[$i]] = "Name ist auskunftspflichtig";
      } else {
        $probleme[$felder[$i].'2'] = test_input($felder[$i]);
        if (!preg_match("/^[a-zA-Z ]*$/",$probleme[$felder[$i].'2'])) {
          $probleme[$felder[$i]] .= "Nur buchstaben und Leerzeichen sind erlaubt";
        }
     }
    }
  }
return $probleme;
}

只需迭代['name'、'nachname'、'ort'],并使所有条件都依赖于此。您当前的函数是什么样子的,或者更确切地说是什么样子的?请向我们展示创建此函数时遇到的实际问题