Metod __toString

Metoda __toString je magična metoda u PHP-u koja definiše kako se objekat treba ponašati pri pokušaju njegovog pretvaranja u string. Ova metoda se automatski poziva kada se objekat koristi u kontekstu gde se očekuje string, na primer pri ispisu preko echo ili pri konkatenaciji. Metoda mora da vrati predstavu objekta u vidu stringa.

Sintaksa

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

Primer

Napravićemo jednostavnu klasu sa metodom __toString:

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

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

Rezultat izvršenja koda:

php'User object'

Primer

Složeniji primer sa vraćanjem svojstava objekta:

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;
?>

Rezultat izvršenja koda:

php'Product: Laptop - $1000'

Pogledajte takođe