Fig:Basic Architecture of Frameworks
PHP operates on the Model View Controller (MVC) fundamentals. MVC is an architectural pattern featured in various popular programming languages which breaks apart your domain logic from your user interface. The domain logic is the function that handles information exchange between your database and your user interface. Therefore you're able to modify the domain logic and most importantly for designers, the user interface separately. This removes a lot of confusion and simplifies the entire developmental process. When we refer to MVC we generally perceive it as this: The M stands for the raw data, the V(view/user interface) represents what's actually being viewed, and C (controller) is in fact the domain logic
The main advantages of PHP Frameworks over Core PHP are as follows: Frameworks Like Codeigniter, Cake PHP, Zend, etc. support almost all database connections like SQL, My SQL, Oracle and ODBC. These superlative PHP frameworks follow MVC (Model View Controller) architecture which is a great combination of database application (model), HTML coding (view) and input/ output instructions (controller). It will make your code lightweight, sharp and secure.
Frameworks speed up the development process by automatically creating functionality like CRUD so that the developer can focus on creativity than base structure. Using frameworks drastically reduces the time of the project as complex codes need not be typed. These frameworks have inbuilt Core Library, hence coding gets lighter as compared to the traditional way of PHP coding. Same code can be used in different projects with some modification . Hence recycling the code is one of the most important feature provided by the PHP frameworks. There are functions for handling date formats, database connections, handling emails, editing strings, etc. PHP frameworks have their own specific debugging methodologies. One of the most important feature is community help. In the ever growing community you find many people ready to offer help with the frameworks and keep updated with the latest versions to enable maximum usability . Disadvantages of Using PHP Frameworks
The problem with coding inside of a framework is it will narrow your vision. Once you work inside a framework you begin to follow their traits, which is not a bad thing, but when PHP is such an open language with many different methods it can be a bad thing to work in a narrow spectrum. The use of frameworks can also restrict your use of a programmer. One framework is not like another, you will go all out on one or a jack of all. The use of frameworks only serves to spilt up the community of PHP developers. Use of Frameworks may slow down the execution of the Application due to uses of different packages and helper and library. You don’t learn the language- It is the biggest disadvantage of using a framework. Every framework uses different Methods of coding , but sometimes, you start using a framework without any knowledge of the language behind it and you only learn the framework and not the language. The coding process of CakePHP is different from Code-Igniter. The problem of not knowing the language is huge. Open source can be harmful- Frameworks are easily...