If you are using PHP, you should be using Laravel! It is superior in every way to CodeIgniter & CakePHP. Not to be unfair to Cake & CodeIgniter, which both have built in ORM, making queries very simple. Laravel on the other hand offers their eloquent ORM that makes database …
Originally, it was a decision between Zend, CodeIgniter, and CakePHP for me. I chose CakePHP and used it as my main PHP framework for at least a couple of years before noticing and giving Laravel a fair try. Ultimately I selected Laravel because I felt it fit with my preferred …
The majority of the above-mentioned frameworks are good at some particular things. Laravel PHP Framework in general is capable of doing all the same things with standard best practices. Additionally, Laravel PHP Framework brings great community support that is ever-growing. the …
Laravel PHP Framework is the most developed, updated framework right now, with lots of features. Using older versions is less appreciated by the developer community. It is well documented, and Laravel has a pretty big community of supporters getting your query solved faster and …
Supporting unit testing is bigger plus point in Laravel than any other framework. Developing with Laravel is much easier. Other frameworks have value in market, but Laravel has taken the lead in popularity among PHP developers in recent years. The large community supports you …
Laravel is built on top of Symfony so is naturally a better upgrade. It is far superior than cake and igniter (in my opinion). I don't remember, but somewhere in internet someone made a comparison with Laravel and others as racing motor-bike vs a cycle. Because of large …
I inherited Laravel projects originally created by other developers. I haven't migrated clients at this time, however as the project gets bigger and I need to find more elaborate workarounds to address needs that option will be put on the table.
If you need to create simple CRUD applications using a MVC framework, I could say CakePHP could achieve this. But with frameworks like Laravel on the market, I would have a hard time recommending CakePHP for anything.
Laravel is ideally suited for fluent PHP developers who want a framework that can be used to both rapidly prototype web applications as well as support scalable, enterprise-level solutions. I think where it is less ideal is where the client has an expectation of using a certain CMS, or of having a certain experience on the admin side that would perhaps be better suited to a full CMS such as Drupal or WordPress. Additionally, for developers who don't want to write PHP code, Laravel may not be the best solution.
The biggest issue inherit in CakePHP, and why we switched to Laravel, is the base configuration of the program. Most people aree that CakePHP uses old (outdated, even dangerous) PHP habits. There is some truth in this: Cake has not been as quick to adapt to the newer PHP versions as they should. I was always surprised that with new major releases, from 2.4 to 2.5 for example, that the minimum version of PHP will never increase. For example, CakePHP only requires version 5.2.8 of PHP, but it would not have been difficult to update the minimum version at least 5.3 when adapting a new version.
Speed - our company had many issues scaling CakePHP to a medium size application software, even with using REDIS/memcache we would still run into many issues with the built-in ORM.
Significant learning curve. You cannot be an expert in a week. It takes many experimentations to properly understand the underlying concept. We ourselves learned it by using it on the job.
Too much to soak in. Laravel is in everything. Any part of backend development you wish to do, Laravel has a way to do that. It is great, but also overwhelming at the same time.
Vendor lock in. Once you are in Laravel, it would not be easy to switch to something else.
Laracasts (their online video tutorials) are paid :( I understand the logic behind it, but I secretly wish it would be free.
The eloquent ORM is not my recommendation. Let's say you want to write a join, and based on the result you wish to create two objects. If you use Laravel to do automatic joins for you, Laravel internally actually makes two calls to database and creates your two object rather than making one join call and figuring out the results. This makes your queries slow. For this reason, I use everything except eloquent from Laravel. I rather write my own native queries and control the creation of objects then rely on Laravel to do it. But I am sure with time Laravel will make fewer calls to DB.
Supporting unit testing is bigger plus point in Laravel than any other framework. Developing with Laravel is much easier. Other frameworks have value in market, but Laravel has taken the lead in popularity among PHP developers in recent years. The large community supports you if you have problems. Using Laravel, integration became easy with third-party libraries, but it was costly too.
Laravel allows us to rapidly prototype and build complete, scalable applications internally, which saves us time and allows us to have internal tools that fit out precise needs. We use Symfony for a similar purpose, but Laravel is an even higher-level framework that we find saves us substantially more time when building many types of web applications.
Laravel solves many of the underlying concerns of building a large application (such as authentication, authorization, secure input handling) in the right ways. It saves us from handling those low-level concerns ourselves, potentially in a way that could take a lot of time or sets us up for issues in the future. It's tough to assign an ROI to this, but I'm sure it has prevented issues and saved time, which both have an impact on our financial situation.