If you are in the process of starting a new project, or perhaps re-writing an existing project, and you are trying to decide on which PHP framework to use it is very important to understand the two differences between most frameworks. A framework is one of the two: it is either a Glue Framework or a Full-Stack Framework. In order to understand the difference between the two a quick definition of each of these frameworks are below:
FULL-STACK FRAMEWORKA Full-Stack Framework is a framework that offers an all-in-one solution including URI Routing, Security, Caching, Hooks, and many many more features. When using a Full-Stack Framework you are agreeing to adhere to the frameworks standards and ways of implementing the code. In short, when using a Full-Stack Framework you are going to 'Play By Their Rules'! Good for security and rapid application development; however, not so great with endless flexibility.
A few examples of Full-Stack Frameworks are listed below:
A Glue Framework is a framework that gives you control of your code and allows you to implement a lot of their classes, helpers, and libraries. A Glue Framework does not tie you down and make your code conform to their standards. Usually these types of frameworks require more coding and thought on the developers side; however, the developer is not limited to any kind of functionality or standards. In fact there are a few Glue Frameworks that offer the option of including their MVC architecture and Full-Stack Framework.
A few examples of a Glue Framework are listed below:
So, when deciding which framework you wish to use, be sure to keep in mind what you are getting yourself into ;)