Un modelo es una clase PHP que contiene la lógica de negocio de nuestra aplicación. La lógica de negocio es el "núcleo" de nuestro sitio web. En ellos se implementa el objetivo del sitio web. Por ejemplo, si implementamos un sitio web de comercio electrónico tendremos modelos que implementan el catálogo de productos y el carro de compras.
En general el termino modelo significa una representación simplificada de un objeto de la vida real o un fenómeno. Simplificado porque el objeto de la vida real tiene una infinita cantidad de propiedades. Por ejemplo, un persona en la vida real que visita nuestro sitio está constituida por billones de átomos y no podemos describirlos todos. En su lugar, tomamos varias propiedades de un objeto que son las más importantes para nuestro sistema e ignoramos todas las otras. Por ejemplo, las propiedades más importantes de un visitante del sitio (desde el punto de vista de un arquitecto de software) son: primer nombre, segundo nombre, país, ciudad, código postal y dirección.
Los modelos pueden tener algún comportamiento. Por ejemplo, el modelo envió de correo puede enviar mensajes de correo electrónico, el modelo convertidor de monedas puede ser capaz de convertir dinero, etc.
Con ZF3 representamos los modelos como clases de PHP usuales. Las propiedades se implementan como campos de una clase y el comportamiento se implementa como métodos de clase.