What is a php framework?
There are plenty of articles which descripes the deferrences between php frameworks. But before talking about how to make a choice, it’s worth talking about what a php framwork is.
The idea behind a framework is to offer a design you can use across multiple applications. All applications have a number of basic things in common — specifically, some kind of interface with a database, some amount of application logic, something that presents the application to the user. If you’ve written some PHP applications, you know what this looks like(illustrated by the picture below). You’ve probably written a set of functions or a class that reads and writes data from the database. You might have used a templating engine like Smarty to manage your UI. You’ve certainly written a bunch of PHP code that did things like analyze form submissions and make decisions based on submitted data. And if you’ve written many applications, you’ve probably done the same basic things over and over, sometimes stealing code from one application to use in another.
A framework is designed to provide a structure for these common elements (database interaction, presentation layer, application logic) so you spend less time writing up database interface code or presentation-layer interfaces and more time writing the application itself. The architecture represented by breaking an application up in this fashion is referred to as Model-View-Controller (MVC). Model refers to your data, View to your presentation layer, and Controller refers to the application or business logic.
After getting the conception of a framework, I hope you can make a better choice depending on your needs.