Возврат не работает при пустой функции проверки PHP - PullRequest
0 голосов
/ 21 апреля 2020

Спасибо за помощь. В любом случае, я студент, и я застрял в создании функции, которая выполняет простую проверку empty () на ключ в массиве. Если он пуст () ->, он заполнит ошибку и напечатает ее на элементе div.

Это мой код:

 function validateData($data, $formErrors) {

    if (empty($data)) {
        $formErrors = 'name is required.';
      }
    echo $formErrors;
}

Выполнение функции:

  $data = $_POST;
  $formErrors = [];

  // Elementen valideren
  validateData($data['name'], $formErrors['name'] = '');

Это то, чего я хочу достичь:

if (empty($data['surname'])) {
    $formErrors['surname'] = 'Surname is required.';
  }

Похоже, это не возвращает значение этого ключа или whatelse?

Большое спасибо!

1 Ответ

1 голос
/ 21 апреля 2020

Вы должны сделать это ссылочный параметр с & если вы хотите, чтобы назначить его в функцию.

function validateData($data, &$formErrors) {

    if (empty($data)) {
        $formErrors = 'name is required.';
      }
    echo $formErrors;
}

И вы не можете использовать выражение при передаче ссылочного параметра, то есть быть просто переменной. Должно быть:

$formErrors = ['name' => ''];
validateData($data['name'], $formErrors['name']);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...