Metoden __toString

Metoden __toString er en magisk metode i PHP, der definerer, hvordan et objekt skal opføre sig, når der forsøges at konvertere det til en streng. Denne metode kaldes automatisk, når objektet bruges i en kontekst, hvor der forventes en streng, for eksempel ved udskrivning via echo eller ved sammenkædning. Metoden skal returnere objektets strengrepræsentation.

Syntaks

phppublic function __toString(): string
{
  // returner strengrepræsentation
}

Eksempel

Lad os oprette en simpel klasse med metoden __toString:

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

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

Resultat af kodeudførelse:

php'User object'

Eksempel

Et mere komplekst eksempel med returnering af objektets egenskaber:

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

Resultat af kodeudførelse:

php'Product: Laptop - $1000'

Se også