You could just look at them as 'enforced documentation' - ie, if you want to swap out this bit of code, here's what you need to implement.
But you don't need to use them if you don't want too - plenty of other OO languages don't have them at all.
Be part of JetBrains PHPverse 2026 on June 9 – a free online event bringing PHP devs worldwide together.
Hello,
Just finished watching the OOP Bootcamp Interfaces chapter for the 3rd time. I don't seem to get it, what is it good for that Abstract Class can't do? except that you can only extend one abstract class (which is quite stupid if you ask me). Say the logger example he used, first of, why do i need to have the actually class require a logger class at the construct, say every single classes i have require a logger, would i have to attach a logger class to each any single one of them? why it would be wrong to make the logger static? I can't understand any of it..Interfaces just seem pointless to me, as i don't need a contract between my classes. but this seem to be a really main thing in OOP, what can i do?
Please or to participate in this conversation.