Laravel: The PHP Framework I was waiting for

Today I would like to talk about a PHP framework that I have fallen in love with!! Although some time ago I spoke in this blog about how good CodeIgniter is, and I still think it is, all my new projects are going into a single direction: using Laravel.

Laravel is PHP framework, built over Symfony, that is actually in its 4th version.. yes! Version 4?? And almost nobody knew about its existence. Well, actually there are too many php frameworks that is quite impossible to know about all of them, but that does not mean that Laravel has a huge community behind it trying to improve it as much as possible.

So, why is Laravel so “wonderful”? If you have a look to its webpage there is a slogan for this framework very well selfexplaining: “The framework for web artisans”. Yes, Laravel is created to focus on the web and to be as extensible and modular as possible when creating web projects. It’s basically what Symfony should have been in the past but never was, but why? If you have ever tried Symonfy you should have noticed that it is a VERY POWERFUL framework, but at the same time, really hard to learn and more oriented probably to big projects. Laravel is the opposite. It has all the power of Symfony but it does things in a very easy way. First of all I love the way you create your databases and structures. There is no need to learn MySQL or SQLite code anymore. You define at the beginning of your project which engine to use and after all everything is managed using Objects and Classes!! If in the middle of the project you decide to switch to  different database engine you can do it as well without changing any single line of code of your project, just the configuration file where it says which engine to use.

Not only that, but also the way you create the templates is simply stuning! It uses a templating language called Blade which is like an extension of PHP. That means that is quite easy to understand and learn for PHP developers. Probably in less than one hour a php developer can start doing his/her own templates after reading the initial documentation.

Something against Laravel? Well, it depends. I really hate a framework needs the command line for such tasks, and Laravel does. You need to execute commands to create a new project or deploy the database. In that way I like more CodeIgniter and to deploy it to a web server you need to access the config file in order to specify the public folder instead of the private folders for the project. Apart from that, the framework is simply perfect so it’s worth to have a look to it if you are looking for a powerful, easy and stunning php framework.