Classes which cannot be instantiated and require subclasses to provide implementation for the abstract methods or in other words you cannot create object of abstract classes and these classes are used for inheritance purpose. Abstract classes can only inherited in your child class.
similar to abstract class. As we all know PHP does not support multiple inheritance. This problem is solved by interface in which you group classes that share some functionality that do not necessarily share a parent class.