What is CMS?
CMS is Content Management System. It provides complete basic functionality that can be used as base for any website.e.g. WordPress,Joomla,Drupal and many others. Once we install CMS their basic functionality is ready to use we can change its core logic and add new features in it by extending its functionality e.g. developing plug-ins in WordPress,extension and modules in Joomla etc.
This type of functionality is good for small and medium websites or web applications that customer’s needs are close to the features that CMS provides. CMS are easy to use and flexible to extend.
What is framework?
Framework is a group of classes and methods which are used for easier, faster and better quality in developing applications like web sites and web applications.
Frameworks are used for custom applications where customer needs cannot be accomplished by CMS.
Also Frameworks are used for very huge applications for better performance and quality.
Most Common PHP frameworks are CakePhp, CodeIgniter, Zend etc.
What to choose CMS or Framework?