What is Encapsulation in PHP

Encapsulation in PHP is a primary theme in Object-Oriented Programming Language (OOP), P. It declares the idea of binding attributes and functions into a particular Class. By doing this, It will be referred to as Information Hiding. But If you have an attribute that can not be detected by others and you bundle it with methods that present all the paths to the data members, then you can hide the content and control the path to the object.

In our daily life, encapsulation is like our folder where we can keep our documents, media, etc. In this case, the folder will be the main class and the attributes will be documents, media, etc.

Example of Encapsulation in PHP

<?php
class Job
{
public $Job_name;
public $Job_id;
function __construct($job_names, $job_ids)
{
$this->Job_name = $job_names;
$this->Job_id = $job_ids;
}
public function Job_details()
{
echo "Job name is: $this->Job_name  Job id is: $this->Job_id";
}
}
$obj = new Job("Web Developer", "096847");
echo $obj->Job_details();
?>
Output
Job name is: Web Developer
Job id is: 096847

Advantages of Encapsulation in PHP

  1. The fields of the class can be performed read-only using access specifiers such as private, public, and protected.
  2. It blocks accidental modifications in the data.
  3. It enables us to change the executed code without breaking the code of others who use the same code and functions.
  4. It gives your code extra security, flexibility, and ease of maintenance.

Object-oriented programming in PHP is executed by using the idea of Encapsulation which is utilized for communication hiding. It relieves the comfortable accessibility of attributes of the current class. Getter and Setter’s techniques are used for bypassing external undesirable access. It also supports validating unique values allocated to the properties.
In quick, Encapsulation in PHP is the procedure of hiding all the intimate details of an object that really do not contribute greatly to the essential elements of the Class.

Encapsulation and Data Hiding

One of the key aspects of encapsulation is data hiding. By marking properties as private, we ensure that they can only be accessed or modified through the class’s methods. This helps to prevent direct manipulation of data from outside the class, maintaining data integrity and encapsulating the internal implementation details.

For example, let’s say we have a Person class with a private age property. To access or modify the age of an object, we would provide public methods such as getAge() and setAge() within the class. This way, we control how the age property is accessed and ensure that any necessary validations or logic are applied.

class Person {
    private $age;

    public function getAge() {
        return $this->age;
    }

    public function setAge($age) {
        // Perform validations or additional logic if needed
        $this->age = $age;
    }
}

In encapsulating the age property and providing controlled access, we maintain the integrity of the data and can enforce any business rules related to age, such as minimum or maximum limits.

Conclusion

In this article, we got one of the best programming language concepts. Encapsulation is one of the common popular and generally used methods to overcome the functions and techniques that are called in multiple locations.

The quality of encapsulation is to hide the complex code from the user and show the real functionality to the user. If fit encapsulation is not served in the code, it leads to poor design.