PHP-фреймворки и CMS являются популярными и эффективными инструментами для создания сайтов. Область применения обуславливается их особенностями, достоинствами и недостатками. В общем случае создание сайтов с помощью CMS можно сравнить с постройкой дома из ограниченного набора готовых кубиков-помещений. С помощью PHP-фреймворков можно самостоятельно создавать эти кубики, придавая им необходимую функциональность. Рассмотрим их подробнее. 

PHP-фреймворки

Фреймворк - это основа будущего приложения, набор хорошо отлаженного кода для решения задач, наиболее часто стоящих перед разработчиками сайтов. На основе фреймворков можно разработать не только отдельное веб-приложение, но и оригинальную CMS, хотя на современном этапе это вряд ли имеет смысл.
 
Популярные представители: Yii, Zend Framework, Symfony2, Laravel, Phalcon, Codeigniter, Kohana.
 
Недостатки PHP-фреймворков
 
- Сложность изучения. Как минимум, необходимо хорошее знание PHP.
- Высокая стоимость разработки. Строить здание из кирпичиков намного дольше и сложнее, чем из готовых блоков.
- Отсутствие административного модуля. Необходимо самостоятельно создавать страницы для управления содержимым, авторизации, текстовые редакторы и т.д.
- Дорогое последующее обслуживание. Развитие или сопровождение готового сайта является трудозатратной задачей даже для его разработчика. С привлечением других программистов иногда проще разработать новый сайт, чем доработать уже существующий. 
 
Достоинства PHP-фреймворков
 
- Высокая производительность кода. Быстрее работать могут только сайты, полностью написанные на PHP.
- Безопасность. Фреймворки пишутся одними опытными программистами для других программистов и тщательно тестируются всем сообществом. Это позволяет вовремя заметить недостатки кода с точки зрения безопасности и устранить ошибки. 
- Гибкость. Фреймворки позволяют решать практически любые задачи. Имеется возможность использования готовых классов и библиотек, написанных другими программистами.

CMS - система управления контентом

CMS - комплексное программное решение, позволяющее быстро создавать и наполнять содержимым типовые, наиболее востребованные виды сайтов.
 
Популярные представители: Drupal, WordPress, Joomla!, DLE, UMI.CMS, MODx.
 
Недостатки CMS
 
- Строго заданная функциональность. Большинство CMS удовлетворительно решают одну - две задачи, на которые они рассчитаны. При работе с любой из них сразу начинаешь сталкиваться с досадными ограничениями.
- Низкая производительность. Все CMS значительно, иногда в разы, уступают по производительности аналогичным решениям на базе фреймворков.
- Избыточная функциональность отдельных модулей. Практически всегда взгляды разработчиков и ваши на необходимую функциональность модуля кардинально различаются. Это беда всех универсальных решений. Поэтому часто используется лишь незначительная часть возможностей. 
- Необходимость изучать сложную систему шаблонов. Дизайнеру придется разобраться с правилами создания шаблонов и их возможностями, которые могут заживо похоронить не одну задумку.
 
Достоинства CMS
 
- Скорость создания сайтов. Это основное преимущество CMS, оправдывающее их существование как класса. К тому же легко найти уже готовое решение нужного функционала в виде расширений.
- Относительная легкость в изучении и настройке. Создать стандартный сайт можно, совершенно не владея языками веб-программирования. CMS интуитивно легко устанавливаются и настраиваются. Очень помогает система выбора из выпадающих списков и чекбоксов. Дополнительным плюсом в работе является схожесть CMS между собой.
 
Выводы
 
Фреймворки являются отличным выбором для профессионалов, желающих разрабатывать сложные уникальные проекты с быстрым кодом.
 
CMS подойдут как для новичков, впервые столкнувшихся с задачей сделать свой сайт, так и для более опытных разработчиков при необходимости быстро создать стандартный сайт.