Hello everyone, it seems that most often many projects or let me say jobs requires PHP frameworks. But I have not used a framework before and I love coding in the actual php OOP syntax. Is it necessary to use a framework for a project?

Member Avatar


If the people you work for or the client want you too, then yes. You don't have to, but for bigger projects you end up creating everything from scratch which may take a long time. Granted, frameworks take a little time to get used to, but after that initial investment, you're sorted. In addition your work will we reasonably standardised so that other programmers will be able to see what you did. Using raw php can be a bit of a nightmare for the next guy.

Having skills or experience with frameworks may make you more employable too.

If the project is small in scope then a framework may be using a sledgehammer to crack a nut. my 2p

Thanks diafol, but can i create my own framework.

can i create my own framework

Sure you can. It's just a collection of reusable components and some default business logic. Start small and let it grow slowly. Think about the right architecture before you start building all kinds of stuff though.

thanks pritaeas, but thinking of what diafol said, its true though. Many job requirements include at least one php framework.

So how can i study all these frameworks or is it okay to study one. If yes please recommend that one for me to start learning.

If you want to learn how they work, I'd suggest starting small and work your way up, or choose the most likely one you will encounter. For that, see the survey.

Thanks diafol and pritaes.

Member Avatar


If you create your own, as pritaeas says, make sure you get the basics structure right. If you're not an OOP expert, creating your own framework may turn out to be a bit of a task. Of course, most custom or DIY frameworks do not have to be as fully developed as the released ones, so you can, again as mentioned by pritaeas, develop it over time.

Most frameworks have a pretty similar feel and are based around MVC. However, some take longer to learn than others (e.g. Symfony killed me - not to put you off!).

Frameworks offer a very easy way to get into REST - http://URL/controller/method/parameters - which may be reason enough for you. They also have quite robust methods for authentication and session handling.
Their DB handling an be useful (or NOT!), where you can just use things like Fluent/Eloquent.
Form handling, validation rules, responses/alerts - all very do-able, lean and clean from the client perspective.
However, there is often a hell of a lot of processing going on behind the scenes - perhaps more so that would be required by a DIY solution. It should be noted that some frameworks utilise certain 'frowned-upon' implementations or coding patterns too, although, TBH, if you're using it as a tool and it's safe, robust and quick - who cares? Some people get their knickers into such a twist over this. If you're a small-medium project one-man band developer on a tight schedule, you're not going to worry too much about calling a static method instead of an object method.