V
V
Vladimir2012-09-06 00:19:41
PHP
Vladimir, 2012-09-06 00:19:41

The eternal question: what framework would you recommend for specific tasks?

Hello, dear habra-programmers!
I'm starting to write a serious project: a social network with the ability to flexibly filter a large database.
At the moment - I'm facing the choice of a framework.
There is a self-written solution that I know inside and out, besides, the optimization is on top, but ... the customer wants reliability, and only two sites are running on my engine and it has not yet been tested at all.

So… please advise a PHP framework that fits these criteria:

  • MVC-like architecture.
  • modularity at every level.
  • fast templating engine, preferably on Blitz; with support for multilingual localization.
  • caching of individual blocks, both globally and for each user separately.
  • work with MySQL (and, will be a plus, MongoDB); checking data for injections.
  • mail queue support.
  • quick detection of browsers.
  • work with users: registration, forgotten password, login, profiles, comments, rights.
  • the ability to define an entry point for an AJAX request to the same module that assembles the page from which the request is sent.
  • preferably, the possibility of Russian-language support, or at least an abundance of information on the forums

The customer is generally inclined towards monstrous CMS, like Bitrix, but ... he is completely clumsy.
But I need a calculation for a large load ... However, the terms are not so long and it is supposed to allocate very little time for the admin panel ...

Give me some advice - who uses what?
Thank you… (:

Answer the question

In order to leave comments, you need to log in

10 answer(s)
I
Inori, 2012-09-06
@Inori

symfony2.
* One of the best architectures
* There is nowhere more modular (Symfony2 components are/will be used in Joomla, Drupal8, phpbb4, Laravel4, etc)
* The default template engine is Twig, I personally have no complaints about it. Multilingual out of the box. But if that Blitz embed will not be an impossible task.
* Built-in reverse proxy, ESI support out of the box
* Full integration with Doctrine, which in turn supports both MySQL and MongoDB and even a bunch of other databases
* Spool out of the box
* Detection of browsers out of the box seems to be absent, but some bundle for this for sure * User support via FOSUBundle
(everything listed is there)
* There is no official Russian support, but there are many Russians in this community, so if English is really bad, then there is help in your native language

R
Renat Ibragimov, 2012-09-06
@MpaK999

To Yii above, I would also add Laravel, a very intelligible, well-documented and understandable framework - laravel.com/docs

Y
Yuri Morozov, 2012-09-06
@metamorph

Well, personally I'm a fan of Yii. You can prototype on it with some kind of inhuman speed, and in real life, Yii is not particularly stupid.
And so - do not care, probably, especially if you do not yet have your own preferences.
Your main bottleneck will not be in the framework at all :)

I
Inori, 2012-09-06
@Inori

Try extending UploadedFile to work with uploaded files the way you want.

What's the problem? We do this in one of our projects.
Try using a FormBuilder so that it pulls in model fields that are fields in another model that have a 1 to 1 relationship.

What's the problem? Implementable with EmbeddedForms + DataTransformers. Moreover, again, in one of the projects we do even more complex machinations.
What to do if the DI Container contains the wrong object that you were counting on, where to look for the error?

php app/console container:debug

What to do if you need to keep a history of object changes, but you cannot use the EntityManager in lifecycleCallbacks. Why then are they needed?

event listeners.
Why is it necessary to get up cancer to implement SOAP?

I can't answer without specifics. We'll use BeSimpleSoapBundle with no problem.
Why one config for the whole application (app/config/config.yml)?

parameters.yml, routing.yml, security.yml, and the ability to define services.yml and routing.yml by bundles do not count?
Why can't we inherit from an Entity from FooBundle that doesn't know about our BarBundle?
Can.
Why the hell is the SecurityBundle both out of the box and out of FOS so poor in functionality but so healthy?

Subjective, emotional point, I see no point in answering.
Why on the official IRC....

I don't even know what to say to that...
Fine. Why in such an excellent ORM is it impossible to save not all the changed, but only one changed entity?

Can.
I can go on for a very long time.

Go on.

R
R0ckwi11, 2012-09-06
@R0ckwi11

Try Kohana,
I use it everywhere, even though the community is almost dead, and 3.3 will not be released in any way :(
Yii is not bad.

K
Kir ---, 2012-09-06
@SowingSadness

Definitely choose Yii.
Based on our choice: habrahabr.ru/qa/16766/
I already have a bunch of negative things in the direction of Symfony 2 as not fully thought out architecture.
Getting into Yii is very quick and easy.
Full documentation in Russian. (On sf2, even in English, not complete)
At the expense of support. Despite the fact that sf2 has a longer support period, this is not true in reality.
sf2 is too fragmented. sf2.0 is no longer developed and stays in one place.
Now they are developing sf2.1 but it is not stable. All bundles are now starting to be rewritten for this version, scoring on sf2.0. And one fine day, updating the bundle, you may encounter the fact that it stopped working altogether (and there were bugs in the old version: p)

W
Wedmer, 2012-09-06
@Wedmer

If you trust yourself, you are sure that your decision will not be forgotten by you, then it is better to choose it if it is 100% suitable.
And so Yii.

V
Vampiro, 2012-09-06
@Vampiro

The choice, then actually, is Zend, Yii and Symphony2 ... if you are configured to implement php. Working with databases everywhere through DBAL, as far as I'm in the subject, so there you can connect at least for Oracle. I think everyone already has standard modules for admins. Template engines are also reconnected any you want. Here the question is rather - what will it be easier and faster for you to “drive into” so as not to delay the development by picking at the docks.

S
skvot, 2012-09-06
@skvot

I recently chose a framework for a new project. I chose yii for myself, the more I know it, the more I fall in love with it *_*

G
glamurchik, 2012-09-06
@glamurchik

+1

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question