PHP бесполезно учить отдельно. Его необходимо учить в связке PHP+JS+HTML+CSS+SQL (или какая-нибудь другая). Отсюда следует, что достигнуть профессионального уровня можно только с помощью практики.
Практического опыта можно набраться двумя способами:
— устроиться на работу в качестве практиканта/ученика;
— самому попытаться реализовать свой сложный проект (результат не важен, главное полученный опыт).
Так же могу посоветовать «разобрать» какой-нибудь фреймворк в плане кода, посмотреть его внутренности, как он устроен, как работает.