From the Insidesigns blog there's a new tutorial showing how you can create a scalable messaging application that works similarly to the instant message platforms users are used to. Their method combines PHP and a MVC approach.
Most social networking sites support two types of messages: public and private messages. Private messages are generally sent in a similar fashion to e-mails, and public messages being posted on user's profiles for other users to see. In this article by Michael Peacock, author of the book PHP 5 Social Networking, we will learn how to allow users to post private messages to each other.
They start with the database structure (specifying things like sender, message and the message) and move into the models to connect the scripts to them. Then they progress into the controllers and views for listing messages, reading a message, viewing and deleting a message. Full code is provided in the post, ready for cut and paste.