Be part of JetBrains PHPverse 2026 on June 9 – a free online event bringing PHP devs worldwide together.

Browse all series

Object-Oriented Bootcamp

As wonderful as Laravel is, it does assume that you have a basic understanding of object-oriented programming. If you don't, that's okay, we all were there at one point; however, you need to buckle down and learn this stuff before continuing on to the various lessons on this site. Let me help!

Updated Series Available

You are viewing an archived course. We instead recommend that you watch Object-Oriented Principles in PHP.

Progress

Series Info

Episodes
10
Run Time
1h 59m
Difficulty
Beginner
Last Updated
Nov 11, 2015
Version
Latest

Series Episodes

  1. Episodes (10)
    1. Classes

      Naturally, the first step in our journey is to review the structure of a PHP class. As you'll find, they allow us to represent pieces of our domain in a readable and flexible fashion.
    2. Getters and Setters

      When I was first learning, I had a lot of trouble understanding the need for getters and setters. Hopefully, I can make it easier for you, than it was for me!
    3. Encapsulation

      Encapsulation is a confusing, scary term, that simply refers to the act of hiding information. Let me show you.
    4. Inheritance

      Luckily, inheritance is a fairly easy concept to understand. I'll show you a few different examples to illustrate this common pattern.
    5. Messages 101

      The key to OOP is undestanding that objects send messages to one another. So far, we've exclusively worked with single classes, but that's not even remotely indicative of a real-world application. So, let's take a step up the ladder, and talk about communication.
    6. Namespacing and Autoloading

      Though not directly related to OOP, it's important that we take a short break to discuss such topics as namespacing and autoloading. These are core concepts that you must learn.
    7. Statics and Constants

      You've likely come across an article on the web, which stated that statics are evil. What do they mean by this? Is it true? Well...partially. Let's talk about it in this episode.
    8. Interfaces

      Appreciating the benefits of coding to an interface took me a very, very long time. This video will be step one on your journey. Watch it multiple times.
    9. Interfaces vs. Abstract Classes

      When I was first learning OOP, I very quickly became confused by interfaces and abstract classes. What is the difference between the two? How do I decide which is appropriate for any given situation?
    10. A Review

      I want to impress upon you that developers, at all times, have multiple ways to solve any particular problem. In certain contexts, one approach might be preferred, while in other situations, it very much might be the wrong approach. The key is to measure the pros and cons as best as you can.

Continue Learning