Тут вот соседи из Кривого Рога прутся от использования Zend Framework:
На работе проект разрабатываем с использованием Zend Framework […] основан на Model-View-Controller […] контроллер должен соответствовать правилам именования […] накладывает серьезные правила на структуру каталогов […] иногда фреймворк предоставляет мало свободы там, где стандартными методами тяжело обойтись и приходится сталкиваться с нетипичными задачами.
Я тут тоже встрял в один проект с использованием фреймворка, правда другого. Ощущения те же самые — да, фреймворк вынуждает писать код в парадигме MVC. Да, файлы надо разносить по соответствуюшим директориям.
Но при необходимости выйти за пределы дозволенного и решить нетипичную задачу (изящно подрубиться к фреймворку, например, для авторизации пользователя в стороннем скрипте) приходится бороться с фреймворком. И необходимость этой борьбы (зачастую изнурительной) полностью перечёркивает все достоинства фреймворка.
Достоинства эти, кстати, довольно сомнительные.
Правильное воплощение парадигмы MVC зависит не от фреймворка, а от программиста: криворукий сумеет смешать MVC в кучу даже во фреймворке, а программист с головой сможет кодить в стиле MVC даже без ООП, на функциях.
А вот необходимость заюзать фреймворк нестандартно возникнет обязательно, на то он и фреймворк. И если для её реализации понадобится возиться с фреймворком длительное время, то ну его наверное нафиг.
На данном этапе наиболее удобным мне кажется использование самописного фреймворка с максимальным включением сторонних библиотек: шаблонизатора (BTW, Smarty рулят), форм-процессора, database access layerа (что-нибудь с поддержкой Active Records), мейлера (создателям PHPMailerа — риспект и уважуха), jquery и далее по вкусу.