Если честно, то по мне, самое лучшее это практика решения реальных задач (проектов). Сам когда то изучал PHP по книгам и задачникам, но после решения их, через неделю забывал уже что да как. И вот когда сам себе придумал проект и начал его делать, то навыки PHP сразу пошли в гору, и самое главное на реальном проекте листинг запоминается лучше.
Для начало, самое простое, это возьми паттерн MVC и разбери как он работает и напиши самый простой сайт-визитку на нем. Ну а дальше уже я думаю сам поймешь куда продвигаться.