Metóda __toString

Metóda __toString je magická metóda v PHP, ktorá definuje, ako sa má objekt správať pri pokuse o jeho prevod na reťazec. Táto metóda sa automaticky volá, keď je objekt použitý v kontexte, kde sa očakáva reťazec, napríklad pri výpise pomocou echo alebo pri konkatentácii. Metóda musí vrátiť reťazcovú reprezentáciu objektu.

Syntax

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

Príklad

Vytvoríme jednoduchú triedu s metódou __toString:

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

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

Výsledok vykonania kódu:

php'User object'

Príklad

Zložitejší príklad s vrátením vlastností objektu:

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

Výsledok vykonania kódu:

php'Product: Laptop - $1000'

Pozrite tiež

  • metóda __construct,
    ktorá je konštruktorom objektu
  • metóda __destruct,
    ktorá je deštruktorom objektu