Как удалить массив из массива, если в нем нет определенного ключа? - PullRequest
0 голосов
/ 01 мая 2020

У меня есть коллекция массивов, и я хочу удалить массив массивов, где ключ "answer_id" не выходит. мой массив выглядит следующим образом.

Array
(
    [0] => Array
        (
            [question_no] => 1
            [subject_id] => 1
            [question_id] => 255
            [currect_ans_id] => 2657
            [time_taken] => 110
            [is_visited] => 1
            [is_saved] => 0
            [answer_id] => 2659
        )

    [1] => Array
        (
            [question_no] => 2
            [subject_id] => 1
            [question_id] => 256
            [currect_ans_id] => 2662
            [time_taken] => 0
            [is_visited] => 1
            [is_saved] => 0
        )


)

и хочу такой массив (где находится ключ answer_id).

  Array
    (
        [0] => Array
            (
                [question_no] => 1
                [subject_id] => 1
                [question_id] => 255
                [currect_ans_id] => 2657
                [time_taken] => 110
                [is_visited] => 1
                [is_saved] => 0
                [answer_id] => 2659
            ) 
)

1 Ответ

4 голосов
/ 01 мая 2020

Вы можете использовать array_filter для удаления записей, у которых нет answer_id:

$output = array_filter($input, function ($a) { return isset($a['answer_id']); });

Демо на 3v4l.org

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