Покажите короткий пример по теме «intersection types» и объясните, что здесь важно.
Что хотят услышать интервьюеры:
Короткий пример по теме intersection types:
Ответ:
<?php function save(Countable&Iterator $items): void {} Что важно: код должен быть безопасным, читаемым и соответствовать контракту задачи. Для PHP-разработчика важно объяснить не только «как написать», но и «почему так безопаснее/надежнее».
- уместны для сложных интерфейсных контрактов
- чаще встречаются в продвинутом backend
- помогают избегать runtime-проверок
Типичная ошибка: использовать intersection там, где проще ввести один понятный интерфейс.
На собеседовании: проговорите, какие edge cases вы бы проверили тестами и что бы логировали при ошибке.