Object oriented programming assumes everything as an object. Key concepts include classes, objects, member variables and functions, inheritance where a child class inherits from a parent class, polymorphism where the same function can be used for different purposes, encapsulation which combines data and functions into an object, and constructors and destructors which are automatically called when an object is created or destroyed. Common uses of classes in PHP include defining properties and methods, creating objects, and extending and implementing other classes.