PHP
Article

Best PHP Framework 2015 Survey

By Bruno Skvorc

Almost a year and a half ago we published the results of a framework survey on the PHP channel. The survey, while producing fewer entries than our IDE survey still provided us with valuable insight into our audience and the state of individual vs. team developers out there.

With Laravel 5 fresh out of the oven, Phalcon being kickstarted into full-time development, and others reaching a much anticipated maturity, it’s only natural we’re curious about your preferences – have they changed? Do they remain unbudged? Do you wish you could switch so hard you can taste it, but aren’t allowed to by your company? We’re interested in all these points and much more.

The survey will run for exactly one month starting today, and to help with the spread, Jetbrains graciously kicked in some PhpStorm licenses for the top three resharers of the link to this post. Zend also wants to see this survey do well and is offering three Zend Studio licenses – so a total of six top resharers will be rewarded. Three random resharers will also get a three month Learnable license.

Instructions on resharing are at the bottom of this post, but first, please fill out the survey that follows.

Disclaimer: Note that email will be censored in the final results – we’ll use it only as a means of contacting you if you win the raffle and won’t share it with any third party services. We also need your email as a sort of proof of uniqueness. The required fields “country” and “age” are extremely important variables and lead to interesting patterns, but we guarantee that they won’t be paired with your email in any shape or form – we’ll use them exclusively for data mining, and not to serve you ads or otherwise invade your privacy. If you agree to these terms, the survey is just below.

The survey is now over. Results will be published soon.

Resharing

To help us accurately track who got the most shares (only shares that resulted in someone filling the survey out count, though), please generate a link for yourself below. The link simply hashes your email address and appends it to a ref tag of the URL to this post, so we can reliably tell which survey participant lead you here. If you lose the link, just re-enter your email in the form below and the same one will be regenerated.



Your link will appear here

Results

The results will be published in full exactly one month after today. The results will be produced in both parsed form (prettified in graph form) and in raw form, so you can grab and analyze them on your own as well.

Comments
safeservicejt

So, you can use Codeme PHP Framework, it's simple & fast.

Github: https://github.com/safeservicejt/codeme

tmquang6805

You must tests and pass GREEN travis-ci first

s_molinari

Done and shared!

Scott

MLF2kx

Hi. why do you separate Yii 1 & 2, ZF 1 & 2, etc. but don't separate Laravel 3, 4 & 5 ? They are also (almost) completely rewritten and should be considered as different options or else, the votes of other frameworks will be divided into smaller groups while the votes of all versions of laravel will be counted as a total sum and this is not fair.

Mohsen_Rajabi

Hi. why do you separate Yii 1 & 2, ZF 1 & 2, etc. but don't
separate Laravel 3, 4 & 5 ? They are also (almost) completely
rewritten and should be considered as different options or else, the
votes of other frameworks will be divided into smaller groups while the
votes of all versions of laravel will be counted as a total sum and this
is not fair.

swader

Hi,

the separation of L3 and L4/5 might be logical, I admit. For now, please add it as "other" if you need to.

However, separating L4 and L5 doesn't make much sense since L5 is barely a few weeks old and not many production apps will be running it yet, making the sample of users who do use it truly minute. What's more, the architecture changes between L4 and L5 aren't that much of a difference, while Yii 1 vs 2 and ZF1 vs 2 are entirely new frameworks, architecturally, logically, and in all other ways but the name. Finally, there's release dates. L4->L5 took two years I think, while Yii1->Yii2 and ZF1->ZF2 took half a decade or more.

Therefore, I feel like this separation is justifiable.

MLF2kx

the separation of L3 and L4/5 might be logical, I admit. For now, please add it as "other" if you need to.

You didn't mention it on the form, so the users of all versions of laravel will choose Laravel, not "other". If several-weeks-life of L5 is the reason, so please put Yii2 on the "other" category because it also has several weeks life. BTW, the separation of framework users will result in unbalanced results. If a framework has some minor versions, they should be separated (among all frameworks, not selectively). This manner leads to winning laravel again, I think. But as I know, Yii users used Yii1 for several years and have many production projects based on it (and so, continue to use it on support phase), but many of them are now turned to Yii2 and so, will choose it. This decreases Yii1 votes. At least you can enable multi-choice option for frameworks to let voters choose all of frameworks they are using.

swader

I appreciate your concernt but the survey has already started, so I can't change multi-choice questions now (a Typeform limitation), but the data will be published in full and you can extrapolate it as much as you want.

The analysis will, besides just listing the winner, also include these categorizations like brand loyalty - for example, in one analysis, one vector will be "Yii users" and another will be "Laravel users", both taking into account all versions.

There will be many analyses so I'm sure we'll find some interesting patterns regardless of the Laravel split. I personally don't know a single developer using Laravel 3, so I doubt that will be a meaningful number (could be wrong, though), and Yii2 has been around for 4 months now with RCs available before that date (Laravel, for contrast, has no RC/beta period).

Unfortunately, I can't. Typeform won't let me, and it would also hurt the results with people who only touched a framework in a demo app once selecting that framework to look better. The intention of the questions is to find out the most used one, if that makes sense. I'll update the description.

draconyster

Can you add PHPixie to the list?

In fact I find that the list is missing a lot of popular entries. Can you at least add the ones from lists like http://codegeekz.com/20-best-php-frameworks-developers-august-2014/ ?

swader

Most of those are on the list, but I think that those that aren't are niche enough to fit into the Other category. I haven't seen them used in any production-active projects in my career span. Heck, some things there are outdated or just plain wrong - Medoo has nothing to do with a framework, PHPixie last had an update 11 months ago and only a default route change, Flight hasn't been touched in a while either, etc.

I can understand you wanting them up there, though, it's only fair. I'll check the popularity of those that are missing and add the top three or so.

Michael_Brooks

Great survey.

I think that people who use Laravel generally try to keep up to date with it. I personally have jumped from V4 to 5 and can say that there isn't an awful lot of difference to justify it as being separated versions.

I too don't know anyone who is on V3, but it would have been interesting to see if there is a percentage still using that version and what percentage that could be.

draconyster

@swader Thanks a lot =)

As for PHPixie not being updated, you probably just looked at the 'framework' repository which is more of a skeleton applications that uses PHPixie components which update regularly. I pushed a few commits to a new version of ORM just yesterday =)

swader

correct : )

Rick_Gortatowsky

Phalcon is really the only PHP framework showing true promise as they are the only entity who seems to realize that extending PHP via a Framework has a significant performance cost and resource cost. They realize that the proper places to enhance PHP with a Framework also are areas where significant speed and resource usage gains can be accomplished.

We have our own internal light framework we created several years back. It consists of an MVC based model, several apache modules including a Smart Cache (allows prioritization, load monitoring and intelligent device selection (RAM vs. Disk .vs. which disk (aka: HD .vs. SSD's etc), Template engine and Database Pooling along with several lesser modules. As the framework is not as robust as say Symfony, Code Ignighter etc. much of that sort of function we have as simple libraries. It reduces dependency hence resources and CPU usage and decouples from a framework's overhead. Our framework whilst again, Internal to our needs makes Symfony and Code Ignighter appear to be standing still. Literally that dramatic.

A framework should be more than a "sit down and write code" asset. It should also improve performance where it can. VERY VERY few do this, Phalcon being the only one that truly improves performance.

As of late last year we started moving our applications over to C# and Mono (.net) and without a dissertation on it, our codebase / applications now are much closer to enterprise ready by sheer nature of .NET and performance wise there is just no comparison. PHP and any Framework .vs. C# & Mono is simply not comparable. C#/.NET is now on par with Java. PHP appears to just get slower.

s_molinari

Just wait for PHP7. smile

Scott

swader

@Rick_Gortatowsky thanks for the feedback, interesting insight. I, too, would argue that PHP7 will bring with it unseen performance jumps, if current benchmarks and Travis runtimes are anything to go by.

daveismynamecom

@swader Many thanks for including Simple MVC Framework in this survey, really appreciate it.

ikkez

What's about Fat-Free Framework? It's definitely worth mentioning.

swader

Out of 3.5k responses so far, 6 have mentioned F3. I believe it's niche enough to be left in the Other category for now.

flaviometalvale

Laravel and Silex smiley

zeshanbilal550

PHP has many more advantage to bhe used. I have used PHP for creating my Website and it is so easy to use!

cweber

Would have loved to have a CMS question / option in the question list.

swader

There is one.

janis

Agile Toolkit not listed in the frameworks list.

draconyster

Why not make the data live ? Or at least daily updates It would be awesome if there was some daily updated visualization =)

swader

Having transparency before it's due might influence the voters. People are more likely to vote for something that is strongly favored already if they don't have their own strong opinion, it's a herd mentality issue.

s_molinari

I'd have to agree. Please go let us know here in the thread, when the results are made public. I am now watching it and will get a notification. smile

Scott

TomB

The other problem of course, and there's not much you can do about this, is that people will also just vote for what they've been using recently and are most comfortable with. It doesn't necessarily correlate with "best", however you want to measure that.

swader

Agreed. Hence why I rather refer to this survey as "most popular" rather than "best". The "best" is in the title for, well, obvious reasons. blush

shayan

I think if this survey ask about the projects scale and customer volume, it will be more helpful.

s_molinari

I'd be very interested in this too.

i.e. Which projects are you using the framework for mostly?

pet projects, small websites, large websites, enterprise applications

How many users are using the application concurrently on average (if you don't know, make a best guess)?

1-10
10-100
100-1000
1000-10K
10K-100K
100k+

Or something to that effect. smile

Scott

swader

Maybe on the next one. I feel like the more questions there are, the sooner people give up on the survey and we get incomplete results. I'll definitely take feedback on this survey into consideration for future ones, thanks

s_molinari

Yes, most certainly for the next one. LOL! smile

Scott

s_molinari

Just got a tweet that there are also Zend Studio licenses to win too. How is that going to work?

Scott

swader

The top 3 pick their reward. The next three pick from the remaining reward pool.

s_molinari

Cool. Thanks for the explanation and (should they be reading) thanks to Jetbrains and Zend for their contributions.

Scott

GrahamCampbell

Laravel 4 and 5 are basically identical, so what you're saying is totally untrue. I would know...

Mittineague

I'm sure you know better than I

https://github.com/GrahamCampbell

But it doesn't seem so "basically" to me.
http://laravel.com/docs/5.0/releases

Laravel 5.0 introduces a fresh application structure to the default Laravel project. This new structure serves as a better foundation for building robust application in Laravel, as well as embraces new auto-loading standards (PSR-4) throughout the application. First, let's examine some of the major changes:

True, many seem to be "additions" rather than potentially breaking changes, but still, there's a lot there.

swader

Whom does this apply to?

GrahamCampbell

L5 introduces a new default app structure and a few design changes, but internally, it's exactly the same. Many components haven't changed at all. Compared to L3 -> L4, this was really minor.

Mittineague

So then the main source of confusion is the choice of version numbering?
i.e. instead of going from 4.2 -> 4.3 a change in the major version number leads one to believe it was a major change.

GrahamCampbell

I think you're misunderstanding what a major change could be? Semver says that any breaking change at all requires a major version bump. For example, symfony 3 is release in november this year, but will be a bit like L5 was coming from L4, for symfony 2 users. Quite far from an overhaul.

N.B. Symfony 2.x doesn't strictly follow semver, but mainly does, and laravel doesn't at all. All laravel's minor releases should be major releases according to semver.

swader

A bit late in the game for that with a week to go in the survey. Those using it can use the "Other" option.

sandesk

@swader A bit late in the game for that with a week to go in the survey. Those using it can use the "Other" option.

Thanks for your kind response.

"May be late but game is not over". smile A week to go. Would be great if you find any possibilities of adding to the list. May help someone.

Thank you!

Onore

2 @swader
Hi!
I add task to my calendar and today one month (exactly) has gone but result still not appear.
Please, tell me the correct date of final results.

swader

Today.

swader

@Onore the results are live.

Recommended
Sponsors
Because We Like You
Free Ebooks!

Grab SitePoint's top 10 web dev and design ebooks, completely free!

Get the latest in PHP, once a week, for free.