Выбор ответа Junior Функции, замыкания, генераторы обновлено
Именованные аргументы
Вопрос
Что даёт вызов htmlspecialchars($s, double_encode: false) в PHP 8?
Попробуйте сами
Выберите вариант, и откроется разбор.
Показать ответ и разбор
Коротко
Правильный ответ: Передаёт аргумент по имени, пропуская необязательные между ними. Именованные аргументы (PHP 8.0) позволяют указать параметр по имени и не перечислять значения по умолчанию для flags и encoding.
Варианты ответа
- Создаёт новую переменную
$double_encodeв области функции - Ошибку синтаксиса: в PHP аргументы передаются только по позиции
- Передаёт ассоциативный массив опций
['double_encode' => false] - Передаёт аргумент по имени, пропуская необязательные между нимиправильный ответ
Разбор
Именованные аргументы (PHP 8.0) позволяют указать параметр по имени и не перечислять значения по умолчанию для flags и encoding. Имена параметров становятся частью публичного API: переименование параметра в библиотеке ломает вызовы. Новых переменных и массивов опций не создаётся.
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.