MVC stands for Model-View-Controller. Model means data, view means representation and Controller means business logic.
It has been used for the first time in Smalltalk and then Java adopted this pattern and made it popular.
The model view controller pattern is the most popular used pattern in today's world web applications.
The MVC pattern is a process of dividing an application into three parts: the model, the view, and the controller.
Design pattern is a code structure that allows common coding frameworks to be replicated quickly.
The model is responsible for managing the data. It stores and retrieves entities used by an application, usually from a database.
The view (presentation) is responsible to display the data provided by the model in a specific format.
The controller handles the model and view layers to work together.
Normally the controller receives a request from the client, invoke the model to perform the requested operations and send the data to the View.
The view format the data to be presented to the user, in a web application as an html output.
Example
A bike is a real-world example of MVC. With a bike you have two views: the interior and the exterior. Both take input from the controller: the driver. The brakes, wheel and other controls represent the model: they take input from the controller (driver) and hand them off to the views (interior/exterior) for presentation.
There are many frameworks available today which follow the MVC pattern in PHP. Some of them are Zend Studio framework, CodeIgniter framework, PHP Smart etc.