Learning PHP for Beginners

Saturday, 11th February 2017

So you are a student who just finished learning the basics of programming and you are so interested about learning PHP. Your friends told you how cool PHP is and I am pretty sure they showed you a bit of their work. You are curious as to how to learn it quickly to be able to start doing the same.

Well here is the deal to get this done :)

In this post, I will tackle the best way to learning PHP as a student. When I use the term student, I refer to a person who is still learning, has 1-2 free hours per day and willing to spend them learning new stuff. I also refer to a person who has enough curiosity and is willing to master technology rather than just get things done from a practical perspective.

PHP Milestones

The first step in learning PHP is to learn the Web Environment that PHP lives in. I assume you already know HTML, CSS and a bit of JavaScript (optional).
I also assume that you know about SQL and you know how to use MySQL.

If so, the below is the roadmap to how to get to master PHP within 3 months:

  1. The first step is to learn PHP the right way. For this reason, there is an online book called PHP The Right Way (and yes it does exactly what its title states). This will take around 6 weeks and should be more than enough in terms of widening your PHP vision and get you in touch with all the different aspects of the PHP programming realm.
  2. The next step is to start practicing with MVC Frameworks. My favourite frameworks are CakePHP and Laravel (for full-stack) and SLIM and LUMEN (for lite frameworks). You can learn these frameworks simply by visiting their websites and viewing their online documentation and/or tutorials. Tutorials are more than enough if you just want to get to know things and understand what can be done. Yet, API documentation will be surely needed if you wish to get to master one of them for commercial purposes.
  3. Once the above is finished, it is time to move more in-depth with other tools that are optional, yet highly recommended for today's online applications. This is where Redis, Memcache, NodeJS and ElasticSearch become handy.

I hope the above gets you started with things. I will be adding more stuff within this post every once in a while if needed.