__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'

함께 보기