Which PHP Framework to choose?

I've been trying to decide which framework to do a new project in and came across Phalcon.

Anyone using it? I was trying out Laravel too but found it a bit awkward to use then tried Phalcon and felt a lot more friendly for me. There are also some great Phalcon tutorials out there and sample projects which really help understand all the implementation.

Check it out here: http://phalconphp.com/en/
 
I've been trying to decide which framework to do a new project in and came across Phalcon.

Anyone using it? I was trying out Laravel too but found it a bit awkward to use then tried Phalcon and felt a lot more friendly for me. There are also some great Phalcon tutorials out there and sample projects which really help understand all the implementation.

Check it out here: http://phalconphp.com/en/

I started using it for a side project hosted on a vps in the hopes that it will handle the limited ram better

Unlike you, I am very familiar with Laravel and am very used to bending it to work the way I expect. Phalcon, while mostly decent, did not behave as I had expected under certain cases.

<highly-opinionated-opinion>I'm also not sold on their reliance on their own programming language.</highly-opinionated-opinion>

The other issue with Phalcon is that it only solves a small subset of performance issues: mainly routing and database calls. While it does offer some great performance improvements and improved memory usage, I'm more intrigued with the performance benefits offered by Facebook's Hiphop VM.

Another issue is the topic of upgrading Phalcon on a running site, which can be made a little difficult since it is a PHP module. The goal is always zero downtime and restarting your web server or php fpm invariably means downtime.

After a bit of time I started thinking of why I was bothering with Phalcon and why I wasn't writing my own PHP module from scratch to host my entire web app - native speed for everything! I realised that this was a dumb idea and also made me realise that I didn't want to use Phalcon.

I'm now playing with bleeding edge Nodejs and Koa (http://koajs.com/). Because, why restrict your knowledge to PHP.... However, I would use Laravel 4 for any new PHP web projects. Composer and Symphony are good reasons for that choice and it doesn't hurt that I understand Laravel's way of thinking.

Nothing wrong with Phalcon though. It is definitely worth looking at if you're stuck with limited server resources and stuck with PHP.
 
I've used a few during my sideline projects. The easiest framework to use is Yii. The most comprehensive is Zend, but has a steep learning curve. Symphony was nice.
 
PHP Application Development AgileInfoways.com

When looking at the answers, on average, the Laravel community seems to mostly favor the ease of entry – virtually no learning curve. Whether that's good or bad is a discussion for another time, seeing as we ended up in this "PHP is bad" mess mostly due to a horde of newbies considering it an easy to enter market, but the excellent documentation, large scale community support and speed of development definitely work in its favor. Another frequently mentioned advantage seems to be an active and impressively alive IRC channel where help is given instantly.

An interesting misconception seems to be that Laravel is responsible for Composer. Many voters, both discarded and valid ones, mention Composer as the main advantage of Laravel, alongside Eloquent ORM and the Blade template engine, which is downright odd seeing as Composer is a package manager completely oblivious to the framework it's being used with, if any. For more information, I urge the participants in question to read some of our Composer articles, like this one. Despite all this, having only tried Laravel in demo projects, the results of this survey have piqued my interest enough to build my next production project in it, powered by HHVM.
 
An interesting misconception seems to be that Laravel is responsible for Composer. Many voters, both discarded and valid ones, mention Composer as the main advantage of Laravel, alongside Eloquent ORM and the Blade template engine, which is downright odd seeing as Composer is a package manager completely oblivious to the framework it's being used with, if any. For more information, I urge the participants in question to read some of our Composer articles, like this one. Despite all this, having only tried Laravel in demo projects, the results of this survey have piqued my interest enough to build my next production project in it, powered by HHVM.

It's easy to see how that misconception starts. The first time many developers encounter Composer is when they install a framework like Laravel. It is also the first time they may encounter a framework like Symphony2. Symphony2 is itself a full-featured PHP framework that Laravel uses heavily.

I had not even bothered to look into Symphony until the default Laravel redirect was not working well enough for me. Calling the Symphony2 based Redirect was the start of the realisation that there is a lot more power below the surface if you need it.

I had also recently listened to a podcast where the discussion was about a large website project that was developed using Symphony2. Hard to miss that they chose Symphony2 rather than one of the more popular PHP frameworks.

For anyone interested in a performance comparison, the TechEmpower performance test results are very enlightening: http://www.techempower.com/benchmarks/.

Keep an eye on the many PHP frameworks (including YAF, Phalcon, Laravel, and Symphony2.) They also run the tests on plain PHP running under HHVM as well as under Nginx+fpm for comparison.
 
Not a fan of frameworks but they have their place.

I guess I would rather build my own code from scratch. Not like I'm building and selling code for a living where a framework makes it easier. :P
 
Not a fan of frameworks but they have their place.

I guess I would rather build my own code from scratch. Not like I'm building and selling code for a living where a framework makes it easier. :P

Yes and not like your code needs to be secure, and that you need to have made sure to take various attack vectors in to place. ;)
 
Yes and not like your code needs to be secure, and that you need to have made sure to take various attack vectors in to place. ;)

Nor do you have to worry about huge security holes a framework has in place and that you have to wait for for years before they actually upgrade to PHP 5.4 and the like...?

Pro's and Con's everywhere. I'd say if you're worth your salt and decide to write from scratch, you know exactly where the security holes are (as there would be none), unlike when you use a framework and never realize there's a hole the size of Montana (yes Hanna) in there
 
Nor do you have to worry about huge security holes a framework has in place and that you have to wait for for years before they actually upgrade to PHP 5.4 and the like...?

Pro's and Con's everywhere. I'd say if you're worth your salt and decide to write from scratch, you know exactly where the security holes are (as there would be none), unlike when you use a framework and never realize there's a hole the size of Montana (yes Hanna) in there

Nope, i totally disagree with you.

Open source frameworks have lots of contributors towards it and frameworks such as symphony and larvel are usually patched within a few days/hours. Where as if you write your own framework you will not know where potentially unseen security holes are, that is the very nature of it. Its an exploit or a 0 day exploit.
 
Nor do you have to worry about huge security holes a framework has in place and that you have to wait for for years before they actually upgrade to PHP 5.4 and the like...?

Pro's and Con's everywhere. I'd say if you're worth your salt and decide to write from scratch, you know exactly where the security holes are (as there would be none), unlike when you use a framework and never realize there's a hole the size of Montana (yes Hanna) in there

what what??? utter tosh. sorry, there is no logic in this. if this was the case, then these frameworks would have no security holes, as the people writing them would know exactly where the security holes are, and therefore there would be none.....
 
what what??? utter tosh. sorry, there is no logic in this. if this was the case, then these frameworks would have no security holes, as the people writing them would know exactly where the security holes are, and therefore there would be none.....

Brilliant my dear Watson! :D
 
Top
Sign up to the MyBroadband newsletter
X