Skip to main content

PHP OOP

Introduction to PHP OOP

Object-oriented Programming (OOP) is a programming paradigm that uses objects and their interactions to design applications and software. This article aims to simplify the concepts of PHP OOP for beginners.

What is OOP?

OOP stands for Object-Oriented Programming. Procedural programming is about writing procedures or functions that perform operations on the data, while object-oriented programming is about creating objects that contain both data and functions.

Class

A class is a blueprint for objects. We can think of class as a sketch (prototype) of a house. It contains all the details about the floors, doors, windows, etc. Based on these descriptions we build the house. House is the object.

class House {
// properties
public $color;
public $size;

// methods
public function paint($color) {
$this->color = $color;
}
}

Object

An object is an instantiation of a class. When a class is defined, only the description of the object is defined. Therefore, no memory or storage is allocated.

$house = new House();

Properties

Properties are variables inside a class. They represent the object's state.

class House {
public $color = 'white';
public $size = 'big';
}

Methods

Methods are functions inside a class. They represent the object's behavior.

class House {
public function paint($color) {
$this->color = $color;
}
}

$this Keyword

The $this keyword refers to the current object. It's used to access the object's properties and methods from within the class definition.

class House {
public $color;

public function paint($color) {
$this->color = $color;
}
}

Constructor

A constructor is a special type of method which is called automatically whenever an object is created.

class House {
public $color;

public function __construct($color) {
$this->color = $color;
}
}

Inheritance

Inheritance is a feature of OOP where a class can inherit properties and methods from another class. The class that is inherited is called the parent class, and the class that inherits is called the child class.

class Building {
public $floors;
}

class House extends Building {
public $color;
}

Encapsulation

Encapsulation is the process of hiding certain details and showing only essential features of the object. In PHP, we can achieve encapsulation using access modifiers - public, private, and protected.

Polymorphism

Polymorphism is the ability of an object to take on many forms. In PHP, we can achieve polymorphism through inheritance and interfaces.

In conclusion, PHP OOP is a paradigm that organizes code into objects with properties and methods. Understanding these principles can help you write cleaner, more efficient and manageable code. Happy coding!