A __toString metódus

A __toString metódus egy mágikus metódus a PHP-ban, amely meghatározza, hogyan viselkedjen egy objektum, amikor azt sztringgé próbáljuk alakítani. Ez a metódus automatikusan meghívódik, amikor az objektum olyan kontextusban van használva, ahol sztring várható, például echo paranccsal való kiíráskor vagy konkatenáció során. A metódusnak az objektum sztring reprezentációját kell visszaadnia.

Szintaxis

phppublic function __toString(): string
{
  // return string representation
}

Példa

Hozzunk létre egy egyszerű osztályt __toString metódussal:

php<?php
  class User
  {
    public function __toString(): string
    {
      return 'User object';
    }
  }

  $user = new User();
  echo $user;
?>

A kód végrehajtásának eredménye:

php'User object'

Példa

Egy összetettebb példa az objektum tulajdonságainak visszaadásával:

php<?php
  class Product
  {
    private $name = 'Laptop';
    private $price = 1000;

    public function __toString(): string
    {
      return $this->name . ' - 
 . $this->price;
    }
  }

  $product = new Product();
  echo 'Product: ' . $product;
?>

A kód végrehajtásának eredménye:

php'Product: Laptop - $1000'

Lásd még

  • a __construct metódus,
    ami az objektum konstruktora
  • a __destruct metódus,
    ami az objektum destruktora