PHP Frameworks
Get a look into the new options in the world of PHP frameworks. These highly flexible code utilities can help any project, large or small.
In the "modern-web," code that is easy to build off of and update easily is considered required by many web developers. This ease of programming flexibility makes large applications easier to manage and easier to expand upon.The majority of these PHP frameworks use a programming methodology known as "Model-View-Controller" which separates aspects of viewing, generating, and modifying the content. The "model" refers to the data that the application is accessing. The "view" determines how this data will be displayed. Finally, the "controller" implements how the data is being manipulated by the end user. Separation of these fields allows for a more easily accessible coding environment, making individual files smaller and easier to work with.
However, the power of these frameworks comes into play with their built-in features, which make programming simple concepts a lot less time consuming. For example, programming a normal blog with plenty of features including comments and an administrative back-end could take hours for a normal PHP coder. However, on many of these PHP framework sites, users of the framework can create a blog with the same features in under half an hour.
One of the more interesting features of some frameworks is scaffolding. Scaffolding is a group of methods specifying how to interact with databases. This includes viewing, modifying, adding, and deleting database entries. For some frameworks, this can even act as an administrative back-end to the data.
My first opinion towards these frameworks, however, is that they should be used when it makes sense to use them. If you have a very small site that doesn't change much, and is simply a blog, you might just want to write a small blog application (especially if your blog doesn't have many features). Overuse of these frameworks can lead to slower code than coding the system standalone. On the other hand, if you have a very large site, you should definitely consider using one of these frameworks to help manage your code in a reliable fashion.
Now, I'm sure you're wondering what framework I would suggest. There sure are plenty to choose from. So I've compiled a (small) list of ones that look the most promising to me.
- CakePHP - A Rails inspired framework that has a large community behind it.
- CodeIgniter - A high-powered high-performance PHP framework with a large community and video tutorials. Also has a very pretty website.
- Symfony - Another open-source PHP framework with plenty of tutorials and active websites using the framework.
If you have any other suggestions, feel free to post them in the comments!
