Как создать массив php для массива поля ввода формы, чтобы элемент массива php не содержал пустых значений - PullRequest
0 голосов
/ 13 апреля 2019

У меня есть HTML-форма, состоящая из поля ввода массива degreename.Теперь я извлекаю этот массив в php, но переменная php создает индексы для всего массива входного поля (degreename[4] и degreename[5]), даже если degreename[4] и так далее не имеет значения.Я хочу, чтобы в массиве PHP был элемент массива со значениями, в массиве PHP должно быть пустое значение.

Ниже приведено то, что я пытаюсь.ниже мой HTML-код формы:

<input type="text" class="form-control" id="degreename1" name="degreename[]" placeholder="Degree Name / Diploma / School Std" >   
<input type="text" class="form-control" id="degreename1" name="degreename[]" placeholder="Degree Name / Diploma / School Std" > 

Я получаю это в PHP-файле, как показано ниже

$degreename = $_POST['degreename'];

HTML-форма имеет только 3 degreenames со значениями и 2 пустые.Я хочу, чтобы PHP создавал массив только из 3 элементов.

1 Ответ

0 голосов
/ 13 апреля 2019

Вы можете просто использовать array_filter для обработки ввода:

$degreename = array_filter($_POST['degreename']);

Выход (для выборки array('MS', '', 'BS', 'MBBS', '')):

Array ( 
  [0] => MS
  [2] => BS
  [3] => MBBS 
)

Он удалит все пустые записи при сохранении индексов тех, которые установлены. Если вы также хотите изменить нумерацию индексов, передайте результат через array_values, т.е.

$degreename = array_values(array_filter($_POST['degreename']));

Выход:

Array (
  [0] => MS
  [1] => BS
  [2] => MBBS 
)

Демонстрация на 3v4l.org

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