Zanim zaczniesz swoją przygodę z frameworkami jest parę rzeczy, którym powinieneś się przyjrzeć najpierw:
- Architektura MVC - większość frameworków właśnie na niej się opiera
- Composer - must-have przy pracy z frameworkami czy jakimikolwiek bibliotekami / komponentami zewnętrznymi
- Autoloading (czyli też Composer i PSR-4), przestrzenie nazw - aby się nie pogubić przy strukturze aplikacji
- Chyba nie muszę wspominać o OOP i wzorcach projektowych (chociaż podstawy)
- HTTP - podstawy wystarczą, ale musisz wiedzieć, jak ten protokół działa
O ile Composera możesz nauczyć się w trakcie, to nie znając pozostałych rzeczy możesz się trochę pogubić - no chyba, że preferujesz naukę pływania na głębokich wodach. Jest też parę pojęć, które pojawiają się chyba we wszystkich frameworkach i które dobrze jest znać - jak np. te, które wspomniał ShiroUmizake - ale równie dobrze możesz je poznać potem (aczkolwiek sama architektura MVC wykorzystuje wiele z nich).
Potem w zasadzie możesz wybrać każdy framework, który wyda Ci się interesujący, nie powinieneś mieć żadnych problemów z jego nauką. Możesz zacząć od microframeworków, ale nie koniecznie - zazwyczaj ich architektura jest mocno uproszczona względem pełnych frameworków, a uproszczenia dobrze jest zostawić sobie na potem.
Jeśli miałbym polecić Ci jakiś konkretny framework, to... poleciłbym Ci Symfony. Bo jest po prostu dobry. Do tego bardzo popularny i dość łatwy w nauce (przynajmniej dla mnie był). A jak nie to masz Yii, Phalcona i całą masę innych.