Encodera

Спасибо, что читаете!

Пожертвуйте сайту, мы стараемся ради вас.

Справочник PHP

Stringable

Интерфейс объектов, которые можно превратить в строку.

Синтаксис

class Name implements Stringable

Возвращаемое значение

stringМетод `__toString()` возвращает строковое представление.

Примеры

Тип string|Stringable в параметре:

<?php
 
class Email
{
    public function __construct(private string $address) {}
 
    public function __toString(): string
    {
        return $this->address;
    }
}
 
function show(string|Stringable $value): string
{
    return '<' . $value . '>';
}
 
var_dump(new Email('a@example.com') instanceof Stringable);
echo show(new Email('a@example.com'));

Результат:

bool(true)
<a@example.com>

Примечания

Писать implements Stringable не обязательно: PHP добавляет интерфейс любому классу с методом __toString().

См. также

  • strval — Преобразует значение в строку.
  • JsonSerializable — Интерфейс, определяющий, как объект превращается в JSON.
  • sprintf — Возвращает строку, собранную по шаблону.

В учебнике

  • Магические методы — Магические методы PHP — __toString, __get и __set, __call, __invoke и клонирование объектов.

Спасибо, что читаете!

Пожертвуйте сайту, мы стараемся ради вас.