Выбор ответа Middle Массивы изнутри обновлено
array_filter и ключи
Вопрос
Что вернёт json_encode(array_filter([1, 0, 2, null, 3]))?
Попробуйте сами
Выберите вариант, и откроется разбор.
Показать ответ и разбор
Коротко
Правильный ответ: {"0":1,"2":2,"4":3}. arrayfilter без колбэка убирает ложные значения, но сохраняет ключи: остаются 0, 2 и 4.
Варианты ответа
[1,2,3][1,0,2,3]{"0":1,"2":2,"4":3}правильный ответ{"0":1,"1":2,"2":3}
Разбор
array_filter без колбэка убирает ложные значения, но сохраняет ключи: остаются 0, 2 и 4. Массив с «дырявыми» ключами уже не список, и json_encode выводит объект. Чтобы получить JSON-массив, добавляют array_values. Проверить, что массив является списком, можно array_is_list (PHP 8.1).
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.