Dynamic Domain Objects in PHP
Modeling real-world objects with computer Data Structures is one of the more fundamental principles of Computer Science.
Data Models however are often tied heavily to their storage medium, whether that be an SQL database, files on a filesystem or a web-service. The idea of implementing a Model/Mapper system is to decouple the format in which we wish to manipulate data from the format that we store it.