Sobes.tech
Junior — Middle

Est-il valide de déclarer une méthode avec un modificateur de confidentialité à l'intérieur d'une interface?

sobes.tech IA

Réponse de l'IA

В PHP интерфейсы предназначены для объявления публичных методов, которые должны реализовываться классами. Объявлять методы с модификатором приватности внутри интерфейса нельзя — все методы интерфейса по умолчанию публичные.

Если попытаться объявить приватный метод в интерфейсе, это вызовет ошибку.

Пример корректного интерфейса:

interface Logger {
    public function log(string $message);
}

Если нужна приватная логика, её реализуют внутри класса, а интерфейс описывает только публичный контракт.