We’re still seeing many users trying to build their own stuff from the ground up. While this is generally a good idea for large custom projects, with a lot of non-standard functionality, it is most likely overkill for most smaller projects. You actually don’t need to reinvent the wheel with every project you start. Have a look at this earlier article that presents some PHP frameworks, which can really speed up your development.
There are numerous advantages of working with a framework when creating and maintaining projects. Development work can be faster and more efficient when using a framework. It is easier to get things done, and it motivates developers to continue working. Often solutions to common issues are already available within the framework, so you do not have to reinvent the wheel every time you start a new project.
What is a framework exactly?
Wikipedia defines “a framework is a basic conceptual structure used to solve or address complex issues”. Plainspoken, in PHP terms, it means that you get a set of scripts that you build and base your application on. The advantage for you is that you can use a lot of pre-made things to speed up your work significantly.
What is required to use a PHP framework?
Having a fairly good understanding of PHP and object-orientated programming is an advantage to fully exploit all the features of a PHP framework, but even beginners gain from using frameworks, because the learning process while working is very high, and it makes the beginner program applications in a better way right from the start. It may seem overwhelming at first, but the time spent understanding a framework is definitely made up for later, when you start saving lots of time during your development process. Other than that, the only technical requirements is a web host that supports PHP (and databases).
How do I get started developing with a PHP framework?
First of all, you need to pick one. This may be the most difficult task in the beginning. There are quite a few frameworks out there, and you may want to try out more than one, to understand differences better. In this article I will briefly present some interesting frameworks that should be good options for most developers.
1) CodeIgniter - The easy framework that is known for exceptional ease of use, rapid development and high performance.
2) CakePHP – The popular framework that is probably the best PHP-version of the Ruby on Rails concept. CakePHP is used by several companies and has a very active community.
3) Symfony – The feature-packed framework that does it all, but is a bit slower than average.
4) Zend Framework – The heavyweight, corporate-level development framework that also does it all, but requires extensive PHP understanding to become a real benefit for developers.
5) There are more frameworks out there, but unfortunately it would be beyond the scope of this article to present them all.
Which one to choose?
Personally I prefer CakePHP due to it’s available features, strong concept and very helpful and active community. However, for you, the bad news is: It’s really hard to determine what framework is the right one for you, and will provide you and your project with the most advantages. The good news is: You will most likely get an (highly) improved development process with any of the above frameworks, no matter which one you choose. The choice is yours ;-)
What to do now?
I recommend you spend some time researching and maybe even testing frameworks before you pick one. Here is a good article that explains some differences between Zend Framework, CakePHP and Symfony, just to get you started.
No comments yet (leave a comment)