TGViewer
msavin | Backend & PHP msavin | Backend & PHP @msavin_php · 794 subscribers
Post #56 1.89K
Есть относительно популярный вопрос на собесах - про множественное наследование в пхп

Тут есть пожалуй три уровня ответа:

1) Трейты. Это все знают

2) Интерфейсы могут наследовать множество других интерфейсов:


interface Foo extends Bar, Baz


С этим уже мало кто сталкивался

3) Класс наследует константы от интерфейса. Класс может имплементить много интерфейсов. Значит класс может наследовать константы от множества интерфейсов. Получается множественное наследование, но только для констант. При этом если константы будут одинаково называться, пхп не будет решать конфликт, просто кинет фатальную ошибку
Вот пример, чтоб поиграться - https://onlinephp.io/c/9c75c

Предположу, что есть секретные уровни, особенно если погрузится в исходники языка, и как там интерфейсы работают, пишите, если знаете еще какие-то подходящие механизмы
onlinephp.io PHP Sandbox - Execute PHP code online through your browser Run PHP code in your browser online with this tool in 400+ PHP versions
  • 👍 22
  • 😁 4
  • 🤔 3
  • ❤ 2
  • 💯 1
More from @msavin_php
  1. Jul 3, 2026Я писал кучу всяких библиотек и утилит, но только одна "стрельнула" и на днях пробила 100к…
  2. Jun 8, 2026Выложил видос, где разбираю чужой тех на предмет ошибок, а не прохожу собес самолично. Как…
  3. Apr 8, 2026Неочевидное поведение variadic + named arguments Вот люблю пхп и ненавижу одновременно - п…
  4. Apr 7, 2026Новое видео про распределенные транзакции, saga pattern, tcc, 2pc, eventual & strong consi…
  5. Mar 27, 2026Зарелизил наконец-то ролик про кэш в сисдизе Если упустил что-то важное, дайте знать 🙂
  6. Feb 13, 2026Выложил второй (из планируемых 4х) видос по сисдизу Заодно сделал репозиторий, демонстриру…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →