All Tutorials

Your One-Stop Destination for Learning and Growth

Class WithToString.php: A Simple Example of ToString Method in PHP

In object-oriented programming, the __toString method is a special magic method that allows an object to define its own string representation. This method is also called the "magic" or "default" toString method because it is called implicitly when an object is converted to a string. In this blog post, we will explore how to implement a __toString method in PHP using a simple example.

Creating a Class

First, let's create a new class named Person with some properties and methods:

class Person {
    private $name;
    private $age;

    public function __construct($name, $age) {
        $this->name = $name;
        $this->age = $age;
    }

    public function getName() {
        return $this->name;
    }

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

The Person class has two private properties $name and $age, a constructor, and two getter methods.

Adding the __toString Method

Now, let's add the __toString method to our Person class:

class Person {
    // ... (previous code)

    public function __toString() {
        return "Name: {$this->name}, Age: {$this->age}";
    }
}

In the above code, we defined a __toString method that returns a string representation of the Person object. This representation will be the concatenated string "Name: {name}, Age: {age}" where {name} and {age} are replaced by the actual values of the properties $name and $age.

Testing the Class

Let's create an instance of the Person class and test the __toString method:

$person = new Person("John Doe", 30);
echo $person; // Output: Name: John Doe, Age: 30

In the code above, we created a new instance of the Person class with the name "John Doe" and age 30. When we use the echo statement to print the object, PHP implicitly calls the __toString method, resulting in the output "Name: John Doe, Age: 30".

In summary, implementing a __toString method in PHP is a powerful way to customize the string representation of an object. This technique can be useful when working with other parts of your code that expect or rely on strings and need to display objects as human-readable information.

Published April, 2024