メソッド __toString

メソッド __toString は PHP のマジックメソッドであり、オブジェクトを文字列に変換しようとした際にどのように振る舞うべきかを定義します。 このメソッドは、オブジェクトが文字列を期待するコンテキスト(例えば echo での出力や連結時など)で使用されると自動的に呼び出されます。 メソッドはオブジェクトの文字列表現を返す必要があります。

構文

phppublic function __toString(): string
{
  // 文字列表現を返す
}

例

メソッド __toString を持つシンプルなクラスを作成します:

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

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

コード実行結果:

php'User object'

例

オブジェクトのプロパティを返す、より複雑な例:

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

コード実行結果:

php'Product: Laptop - $1000'

関連項目

  • メソッド __construct,
    これはオブジェクトのコンストラクタです
  • メソッド __destruct,
    これはオブジェクトのデストラクタです