Что такое анонимные классы?

Ответ
// Анонимный класс - одноразовый класс без имени
$logger = new class implements LoggerInterface {
    public function log(string $msg): void {
        echo $msg;
    }
};

// Полезно в тестах для создания mock/stub
$mock = new class extends AbstractRepository {
    public function find(int $id): ?Entity {
        return new Entity(id: $id, name: 'test');
    }
};

// Можно передавать зависимости через конструктор
$handler = new class($db) {
    public function __construct(private DB $db) {}
    public function handle(): void { /* ... */ }
};

Используются для quick implementations, тестов, одноразовых стратегий.

🧠Квиз 🏆Лидеры 🎯Собесед. 📖Вопросы 📚База зн.