According to Wikipedia: “In computer programming, a software framework is an abstraction in which software providing generic functionality can be selectively changed by additional user-written code, thus providing application-specific software. A software framework is a universal, reusable software platform to develop applications, products and solutions. Software frameworks include support programs, compilers, code libraries, tool sets, and application programming interfaces (APIs) that bring together all the different components to enable development of a project or solution.”
In PHP, the most important frameworks are : Zend, Symfony, Codeigniter, Yii y Cake PHP. It is a good idea spend some hours in learn a bit how run these frameworks, because each one presents details that may be more or less interesting for developers.
In this infographic of ZFort.com there are some details very interesting: