Toda definição de classe começa com a palavra-chave class, seguido por um nome da classe, que pode ser qualquer nome que não seja uma palavra reservada no PHP. seguido por um par de chaves, que contém a definição dos membros e métodos da classe. Dentro de cada método, exceto por métodosestáticos (static), uma pseudo variável $this está disponível. $this é uma referência para a mesma instância que chamou o método.
Para criar uma instância de um objeto, um novo objeto deve ser criado e atribuído a uma variável. Um objeto sempre será atribuído quando um novo objeto for criado a não ser que o objeto tem umconstrutor definido que dispara (throws) umaexceção por um erro.
Quando atribuindo um instância já criada de um objeto à uma nova variável, a nova variável acessará a mesma instância do objeto que foi atribuída. Esse comportamento é o mesmo quando passando instâncias à uma função. Uma nova instância de um objeto já criado pode ser feitaclonando (cloning) ele.
Uma classe pode herdar métodos e membros de uma outra classe usando a palavra-chave extend na declaração. Não é possível herdar classes múltiplas, uma classe só pode herdar de uma classe base.
Os métodos e membros herdados podem ser sobrecarregados, a menos que a classe pai tenha definido o método como final, redeclarando-os usando o mesmo nome definido na classe pai. É possível acessar o método ou membro sobrecarregado referenciando-os comparent::