В PHP объекты являются ключевым элементом объектно-ориентированного программирования (ООП). Объекты в PHP представляют собой экземпляры классов, которые содержат свойства и методы. Свойства объекта представляют переменные, которые хранят информацию, а методы объекта представляют функции, которые обрабатывают эту информацию. Чтобы использовать свойство объекта в PHP, нужно обратиться к этому свойству.
В PHP существует два способа обращения к свойству объекта: через оператор «->» или через оператор «::». Оператор «->» используется для доступа к свойству объекта, который создается при выполнении скрипта, а оператор «::» используется для доступа к статическому свойству объекта, который не создается при выполнении скрипта.
Для того, чтобы обратиться к свойству объекта, необходимо указать имя объекта, за которым следует оператор «->», а затем указать имя свойства, которое нужно получить. Например, если у нас есть класс «Person» с свойствами «name» и «age», то чтобы получить значение свойства «name» объекта «person», необходимо написать «$person->name». Аналогично, чтобы получить значение свойства «age», нужно написать «$person->age».
Основы работы с объектами в PHP
В PHP объекты позволяют создавать типы данных, которые могут содержать свойства (переменные) и методы (функции), которые манипулируют этими свойствами. Таким образом, объекты позволяют организовать данные в структурированных блоках и управлять ими с помощью методов.
Для создания объекта в PHP используется ключевое слово «new», за которым следует имя класса и круглые скобки. Например: $object = new MyClass();
Для доступа к свойствам объекта используется оператор «->». Например: $object->property = «value»;
Чтобы вызвать метод объекта, необходимо использовать оператор «->» и имя метода, за которым следуют круглые скобки. Например: $object->method();
В PHP можно создавать объекты на основе уже существующих классов. Для этого используется ключевое слово «extends» в определении нового класса. Например: class NewClass extends MyClass {}
Кроме того, в PHP можно создавать анонимные объекты, которым не присваивается имя. Например: $object = new class {};
Одним из основных преимуществ использования объектов в PHP является возможность повторного использования кода и создания более структурированного кода. Кроме того, объекты позволяют улучшить читаемость и поддерживаемость кода, уменьшить количество ошибок и повысить производительность.
Создание объектов
Объекты в PHP создаются с помощью ключевого слова new и метода-конструктора класса. Каждый создаваемый объект является экземпляром определенного класса, который определяет его свойства и методы.
Например, для создания объекта класса Car необходимо вызвать его конструктор:
$car = new Car();
Здесь переменная $car становится объектом класса Car.
Метод-конструктор в классе может быть определен с помощью ключевого слова __construct. Например, для класса Car метод-конструктор может выглядеть следующим образом:
class Car {
public function __construct($model, $year) {
$this->model = $model;
$this->year = $year;
}
}
Здесь переменные $model и $year являются параметрами конструктора, для передачи в него начальных значений свойств объекта.
Для создания объекта класса Car с заданными параметрами конструктора, необходимо использовать следующий код:
$car = new Car('Toyota', 2020);
Здесь переменные ‘Toyota‘ и ‘2020‘ передаются в конструктор класса в качестве параметров.
Таким образом, есть возможность создавать объекты различных классов, которые могут иметь свои уникальные свойства и методы.
Обращение к свойствам объекта
В PHP объекты позволяют описать сущность с набором свойств и методов, которые работают с этими свойствами. Чтобы получить доступ к свойству объекта, необходимо использовать специальный оператор «->».
При обращении к свойству объекта необходимо указывать имя объекта, за которым следует оператор «->» и имя свойства. Например:
- $user->name – обращение к свойству «name» объекта «user»;
- $car->color – обращение к свойству «color» объекта «car».
Если свойство объекта является защищенным или приватным, то обращаться к нему можно только внутри методов класса, в котором оно объявлено. Для этого используются методы-аксессоры (геттеры и сеттеры).
Также можно обращаться к свойствам объекта динамически, используя переменную:
Пример кода | Описание действия |
---|---|
$property = «name»; echo $user->$property; | Обращение к свойству «name» объекта «user» через динамически заданную переменную. |
$property = «color»; echo $car->$property; | Обращение к свойству «color» объекта «car» через динамически заданную переменную. |
Важно помнить, что при обращении к несуществующему свойству объекта будет выброшено исключение типа «Notice».
Обращение к свойствам объекта через оператор «->»
В PHP свойства объектов могут быть доступны через оператор «->». Для того, чтобы обратиться к свойству объекта, первым делом мы должны создать объект. Объект можно создать при помощи ключевого слова «new» и вызова конструктора класса. Например:
class Animal {
public $name;
public $age;
function __construct($name, $age){
$this->name = $name;
$this->age = $age;
}
}
$cat = new Animal("Мурка", 2);
echo $cat->name; //выведет "Мурка"
echo $cat->age; //выведет "2"
Как видим, чтобы обратиться к свойству объекта, мы используем оператор «->». В данном примере мы обращаемся к свойствам «name» и «age» объекта «cat».
Также возможен доступ к свойствам объекта при помощи переменных. Например:
class Fruit {
public $name;
function __construct($name) {
$this->name = $name;
}
}
$fruit_name = "Яблоко";
$apple = new Fruit($fruit_name);
echo $apple->{$fruit_name}; //выведет "Яблоко"
Здесь мы создали объект «apple» класса «Fruit» с свойством «name». Однако, в данном случае мы обратились к свойству «name» при помощи переменной «$fruit_name», которая содержит строку «Яблоко». Для того, чтобы обратиться к свойству объекта через переменную, мы заключаем имя свойства в фигурные скобки «{}».
Иногда можем обращаться к несуществующему свойству объекта, в таком случае PHP создаст новое свойство и присвоит ему соответствующее значение. Например:
class Car {
public $brand;
}
$bmw = new Car;
$bmw->color = "Красный";
echo $bmw->color; //выведет "Красный"
В данном примере мы не объявили свойство «color» объекта «bmw», но при обращении к нему, PHP создал новое свойство «color» и присвоил ему значение «Красный».
Таким образом, доступ к свойствам объекта не представляет особой сложности в PHP, важно лишь правильно использовать оператор «->» и указывать правильное имя свойства.
Пример использования оператора «->»
Оператор «->» используется для доступа к свойству объекта. Рассмотрим пример:
class Car {
public $model;
public $color;
}
$car = new Car();
$car->model = "BMW";
$car->color = "red";
В данном примере создается класс Car, у которого есть два свойства: модель и цвет. Создается объект $car на основе этого класса, и далее через оператор «->» мы присваиваем значения свойствам объекта: «BMW» и «red».
Чтобы получить значение свойства объекта, также используем оператор «->». Продемонстрируем это на примере:
echo "Модель моей машины: " . $car->model;
echo "Цвет моей машины: " . $car->color;
В результате мы получим вывод:
Модель моей машины: BMW
Цвет моей машины: red
Таким образом, оператор «->» является важным инструментом для работы с объектами в PHP.
Вывод значений свойств объекта
PHP предоставляет простой и легкий способ доступа к свойствам объектов. Обычно доступ к свойствам осуществляется через оператор «точка» (.):
$myObj = new MyClass();
echo $myObj->myProperty;
Этот код выведет значение свойства «myProperty», которое было установлено в классе «MyClass».
Если свойство не существует, PHP выдаст ошибку «Undefined property».
Если вы хотите проверить существование свойства перед выводом его значения, вы можете использовать функцию «property_exists»:
if (property_exists($myObj, 'myProperty')) {
echo $myObj->myProperty;
}
Вы также можете получить имена всех свойств объекта с помощью функции «get_object_vars»:
$vars = get_object_vars($myObj);
foreach ($vars as $name => $value) {
echo "Property: $name, Value: $valuen";
}
Используя данный код, вы получите список всех свойств объекта «myObj» и их значений.
В случае, если вы используете магические методы для доступа к свойствам объекта, то имя свойства может быть динамически сгенерировано в программе. В этом случае вместо оператора «точка» (.) используется оператор «{}»:
$myObj = new MyClass();
$property = 'myProperty';
echo $myObj->{$property};
При использовании данной конструкции результат будет равным результату, получаемому при использовании оператора «точка» (.) для статических свойств объекта.
Вывод значений свойств объекта – относительно простой процесс, но он очень важен для многих приложений. Надеемся, наши советы окажутся полезными для вас.
Обращение к свойствам объекта через оператор » {} «
Для доступа к свойствам объектов в PHP используются операторы. Один из наиболее часто используемых — оператор «{}». Он позволяет получить доступ к свойствам объекта через его имя.
Для использования оператора «{}» необходимо указать имя объекта, к которому требуется обратиться, и имя его свойства в фигурных скобках. Например:
$user = new User();
$userData = $user->{'getUserData'}();
В данном примере создается объект User, а затем к его свойству «getUserData» обращается через оператор «{}». Полученные данные сохраняются в переменную $userData.
Оператор «{}» также позволяет получить доступ к свойствам, имена которых хранятся в других переменных. Например:
$user = new User();
$propertyName = 'name';
$propertyValue = $user->{$propertyName};
В этом случае имя свойства хранится в переменной $propertyName, а значение свойства получается через оператор «{}» и сохраняется в переменной $propertyValue.
Также возможно использование оператора «{}» для изменения свойств объекта:
$user = new User();
$user->{'name'} = 'John';
В данном примере изменяется значение свойства «name» объекта User на «John» через оператор «{}».
Важно помнить, что описание свойства объекта должно быть доступно в контексте выполнения, иначе будет возникать ошибка.
Пример использования оператора «{}»
В PHP для определения блока кода можно использовать оператор «{}». Он помогает определить последовательность действий, которые должны произойти при выполнении некоторого условия или действия.
Например, при работе с массивами можно использовать оператор «{}» для определения цикла, который будет перебирать все элементы массива:
$myArray = [1, 2, 3, 4];
foreach ($myArray as $number) {
{
echo $number . " ";
}
}
В данном примере оператор «{}» определяет, что необходимые действия для цикла foreach начинаются после открытия фигурной скобки, и заканчиваются после закрытия фигурной скобки. В данном случае, в теле цикла выводится на экран каждый элемент массива с помощью команды «echo».
Также оператор «{}» может использоваться для определения блоков условий, например:
$age = 30;
if ($age > 18) {
{
echo "Вы совершеннолетний";
}
} else {
{
echo "Вы несовершеннолетний";
}
}
В данном примере оператор «{}» помогает определить, какой блок кода должен выполниться при условии, что переменная $age больше 18, а какой блок кода — при условии, что $age меньше или равна 18.
Использование оператора «{}» позволяет структурировать код, сделать его более читаемым и понятным для других разработчиков. Однако следует помнить, что все блоки кода, определяемые оператором «{}», должны быть правильно вложены друг в друга, иначе могут возникнуть ошибки при выполнении кода.
Особенности работы оператора «{}» с массивами
В PHP оператор «{}» называется фигурными скобками и может использоваться для обращения к свойствам объектов, а также для доступа к элементам массива по ключу. При этом есть некоторые особенности, которые необходимо учитывать при использовании этого оператора с массивами.
Кроме стандартного способа доступа к элементам массива по индексу (например, $array[0]), можно использовать фигурные скобки и указывать ключ внутри них: $array{0}. Эти два способа эквивалентны и могут использоваться взаимозаменяемо.
Однако, если ключ является числом с плавающей точкой, то фигурные скобки не смогут корректно распознать его и будет выведена ошибка. В этом случае придется использовать стандартный синтаксис обращения к элементу по ключу.
Также стоит помнить, что фигурные скобки могут использоваться только для доступа к одному элементу массива за раз. Если нужно получить несколько элементов сразу, например, $array{0}, $array{1} и т.д., то для этого придется написать несколько отдельных строк кода.
В целом, использование оператора «{}» с массивами может быть удобным в некоторых ситуациях, но нужно помнить об указанных выше особенностях.
Обращение к свойствам объекта через методы
В PHP объект может иметь свои свойства, к которым можно обращаться напрямую, используя оператор «точка». Однако, в некоторых случаях требуется выполнить дополнительные операции перед получением или изменением значения свойства. Для этого в объекте определяются методы, которые могут обращаться к свойствам объекта.
Методы, обращающиеся к свойствам объекта, могут иметь различную функциональность. Например, метод может проверять, является ли значение свойства допустимым, или изменять его в определенный способ. Обращение к свойствам объекта через методы обеспечивает более безопасный и удобный способ работы с объектом, особенно если свойства объекта имеют значимость для его работы.
Для того чтобы обратиться к свойству объекта через метод, необходимо определить этот метод в классе объекта. Например, следующий код создает класс Person, который имеет свойства name и age. В классе определены методы setName и setAge, которые позволяют задать значения этих свойств:
class Person {
private $name;
private $age;
public function setName($name) {
$this->name = $name;
}
public function setAge($age) {
$this->age = $age;
}
}
$person = new Person();
$person->setName('John');
$person->setAge(25);
В этом примере методы setName и setAge обращаются к приватным свойствам $name и $age объекта через ключевое слово $this. Это позволяет установить значения свойств объекта с помощью вызова методов, вместо прямого обращения к свойствам объекта.
Обращаясь к свойствам объекта через методы, вы можете добавить дополнительные проверки и логику, которые обеспечат корректную работу объекта. Например, вы можете проверять, что значение свойства является допустимым, и возвращать ошибку, если нет. Это поможет избежать ошибок, связанных с неправильными значениями свойств объекта.
Создание и вызов методов
В PHP методы — это функции, которые привязаны к определенному объекту. Они обычно используются для выполнения действий с данными объектов или для изменения их состояния. Методы могут быть созданы внутри класса объекта и вызваны из самого объекта.
Для создания метода в классе обычно используется ключевое слово public или другое ключевое слово доступа (protected или private).
Ключевое слово доступа | Обозначение |
---|---|
public | Метод можно вызывать из любого места программы |
protected | Метод можно вызывать только из методов этого класса и его наследников |
private | Метод можно вызывать только из методов этого класса |
Для вызова метода объекта используется оператор «стрелка» ->, за которым следует имя метода. Например, если у вас есть объект $person, у которого есть метод getName(), чтобы вызвать этот метод, необходимо написать:
$person->getName();
С помощью методов можно получить доступ к свойствам объектов и изменить их значения. Также методы могут иметь параметры, которые можно передать при вызове метода. В PHP можно использовать и статические методы, которые не требуют создания объекта и могут быть вызваны из самого класса.
Важно правильно выбирать ключевое слово доступа при создании метода, чтобы предотвратить несанкционированный доступ к объекту и его свойствам. Также следует следить за тем, как методы взаимодействуют с данными объектов и контролировать изменение состояния объекта, чтобы не допустить ошибок и не привести к непредсказуемому поведению программы.
Работа с приватными свойствами объекта
Приватные свойства объекта – это свойства, к которым можно обратиться только изнутри самого объекта. Они недоступны для прямого обращения извне, что обеспечивает безопасность и стабильность работы программы.
Для работы с приватными свойствами стоит использовать методы-геттеры и методы-сеттеры. Методы-геттеры позволяют получить значение приватного свойства, а методы-сеттеры – установить его. Таким образом, можно контролировать доступ и изменение приватных свойств.
Например, имеется класс “Person” с приватными свойствами “name”, “age” и “email”. Для получения доступа к этим свойствам извне можно создать методы-геттеры:
class Person {
private $name;
private $age;
private $email;
// Геттеры для приватных свойств
public function getName() {
return $this->name;
}
public function getAge() {
return $this->age;
}
public function getEmail() {
return $this->email;
}
}
Теперь можно получить значения этих свойств, вызвав соответствующий метод-геттер:
$person = new Person();
echo $person->getName(); // Выведет имя персоны
Аналогично можно создать методы-сеттеры для установки значений приватных свойств:
class Person {
private $name;
private $age;
private $email;
// Геттеры для приватных свойств
public function getName() {
return $this->name;
}
public function getAge() {
return $this->age;
}
public function getEmail() {
return $this->email;
}
// Сеттеры для приватных свойств
public function setName($name) {
$this->name = $name;
}
public function setAge($age) {
$this->age = $age;
}
public function setEmail($email) {
$this->email = $email;
}
}
Теперь можно установить значения этих свойств, вызвав соответствующий метод-сеттер:
$person = new Person();
$person->setName("John");
echo $person->getName(); // Выведет имя “John”
Таким образом, работа с приватными свойствами объекта в PHP осуществляется через методы-геттеры и методы-сеттеры. Это дает большой контроль над доступом к свойствам и позволяет делать код более безопасным и стабильным.
Обращение к свойствам объекта через магические методы
Магические методы в PHP — это особенные методы, которые создаются внутри класса и используются для выполнения определенных действий. Одним из таких методов является метод __get(), который позволяет обратиться к свойству объекта, которого не существует в классе.
Для того чтобы использовать метод __get(), нужно просто создать его внутри класса и передать в него название свойства, которое мы хотим обратить:
class MyClass {
private $prop1 = "value1";
public function __get($prop) {
return $this->$prop;
}
}
$obj = new MyClass();
echo $obj->prop1;
В приведенном выше примере создается класс MyClass, в котором имеется свойство $prop1. В методе __get() передается название свойства, которое мы хотим получить, и вызывается само свойство $this->$prop.
Таким образом, обращение к свойству объекта MyClass, которого не существует в классе, происходит через магический метод __get(). Этот метод очень полезен, когда нужно обратиться к несуществующему свойству объекта. Он также позволяет сделать класс более гибким и настраиваемым.
В целом, использование магических методов в программировании дает возможность упростить код и сделать классы более универсальными. Они позволяют обращаться к свойствам объектов и выполнения определенных действий с объектами в автоматическом режиме.
Как работают магические методы __get и __set
В PHP есть два магических метода, которые позволяют обращаться к свойствам объекта, если они не определены явно — __get и __set.
Метод __get вызывается при попытке получения значения неопределенного свойства объекта. Этот метод принимает один аргумент — имя свойства, которое было запрошено. Так как этот метод вызывается автоматически, он должен быть public.
Метод __set вызывается при попытке изменения значения неопределенного свойства объекта. Этот метод принимает два аргумента — имя свойства и значение, которое было передано для установки. Так как этот метод вызывается автоматически, он должен быть public.
Важно отметить, что при использовании этих магических методов необходимо правильно обработать ошибки, которые могут возникнуть, если свойство не определено или не доступно.
Кроме того, использование магических методов может замедлить работу программы, поэтому их следует использовать осторожно и только в тех случаях, когда это действительно необходимо.
В целом, магические методы __get и __set предоставляют более удобный способ работы с свойствами объекта в PHP, но их надо использовать с осторожностью и соответствующим образом обрабатывать возможные ошибки.
Использование магического метода __call
В PHP есть специальные методы, которые называются магическими. Они предназначены для обработки действий, которые не определены явно в классе. Один из таких методов — __call().
__call() вызывается автоматически, если в объекте вызывается неопределенный метод. С помощью этого метода можно написать универсальный код, который будет работать и с новыми методами, которые могут быть добавлены в объект в будущем.
В качестве аргументов метод __call() принимает имя вызываемого метода и массив аргументов, которые передаются в этот метод. Внутри метода можно написать логику обработки этих аргументов и выполнения необходимых действий.
Пример использования метода __call() можно рассмотреть на примере класса, который содержит несколько свойств:
«`php
class MyClass {
private $prop1;
private $prop2;
public function __construct($val1, $val2) {
$this->prop1 = $val1;
$this->prop2 = $val2;
}
public function __call($method, $args) {
if($method == «sum») {
return $this->prop1 + $this->prop2;
}
}
}
$obj = new MyClass(10, 20);
echo $obj->sum(); // выводит 30
«`
В данном примере класс MyClass содержит два свойства $prop1 и $prop2, которые принимаются в конструкторе. Затем определен метод __call(), который проверяет, вызван ли метод «sum», и возвращает сумму свойств $prop1 и $prop2.
Таким образом, можно использовать метод __call() для добавления новых методов в объект без необходимости изменять его основной код.
Полезные советы по работе с объектами в PHP
1. Избегайте наследования в избытке
Наследование может быть полезным, однако, его чрезмерное использование может стать проблемой в будущем. Вместо наследования лучше использовать композицию, которая позволяет комбинировать объекты и создавать новые функциональности.
2. Не злоупотребляйте магическими методами
Магические методы в PHP могут быть очень удобными, но их чрезмерное использование может затруднить понимание кода. Избегайте использования магических методов в простых случаях, когда можно обойтись без них.
3. Используйте типизацию переменных
Правильное использование типизации переменных может существенно снизить количество ошибок в коде. Не забывайте, что PHP является языком со слабой типизацией, поэтому необходимо быть аккуратным при работе с переменными.
4. Обрабатывайте исключения
Не забывайте обрабатывать исключения в своем коде. Это позволит избежать непредвиденных ситуаций и поможет улучшить качество кода. Не забывайте анализировать ошибки и исправлять их в будущих версиях программы.
5. Используйте интерфейсы
Интерфейсы в PHP являются мощным инструментом для упрощения разработки программного обеспечения. Используйте интерфейсы, чтобы определять общие методы, свойства и функциональность, которые должны быть реализованы в классах.
Рекомендации по именованию свойств объекта
Правильное именование свойств объектов является важной частью написания чистого и читаемого кода на PHP. Определение именования свойств напрямую влияет на понимание кода другими разработчиками и наследуемость вашего кода.
Используйте описательные имена для свойств. Имена свойств должны четко описывать, какую информацию они содержат. Например, если вы создаете объект для хранения информации о пользователе, то свойство с именем «username» будет более понятным, чем «data».
Соблюдайте стиль написания имен свойств. В PHP принято использовать верблюжий стиль именования переменных, то есть первое слово в названии начинается с маленькой буквы, а все последующие слова начинаются с большой буквы. Например, $firstName, $lastName. При выборе стиля именования важно соблюдать его на всем протяжении проекта, чтобы код был однородным и легко читаемым.
Избегайте длинных имен свойств. Длинные имена свойств усложняют чтение кода и могут снижать его читабельность. Старайтесь выбирать краткие имена, которые соответствуют назначению свойства. Если имя свойства все же получается длинным, то лучше использовать сокращения, которые понятны всем участникам проекта.
Не используйте ключевые слова и зарезервированные имена для свойств. Некоторые имена свойств могут пересекаться с ключевыми словами PHP и зарезервированными словами, такими как «function» или «class». Их использование в качестве имен свойств может приводить к ошибкам в работе кода, поэтому необходимо избегать таких имен.
Выбирайте понятные имена для свойств-флагов. Если в вашем классе есть свойство-флаг, которое принимает булево значение, то лучше выбрать имя, которое начинается с «is», «has» или «can». Например, $isFilled, $hasColor, $canEdit.
Следуя этим рекомендациям, вы сможете написать более чистый и понятный код на PHP, который легко читать и поддерживать.
Советы по оптимизации работы с объектами
1. Используйте конструкторы и деструкторы
Передавайте необходимые параметры при создании объекта с помощью конструктора, а освобождение ресурсов и памяти происходит автоматически благодаря деструктору. Это может значительно ускорить работу программы и уменьшить потребление памяти.
2. Не создавайте лишние объекты
Создание объектов требует времени и памяти, поэтому старайтесь не создавать их в избытке. Если объект не используется в дальнейшем коде, лучше его удалить.
3. Используйте магические методы только по необходимости
Хотя магические методы php могут быть удобны в некоторых случаях, они могут влиять на производительность. Поэтому, если есть возможность использовать обычный метод, лучше это сделать.
4. Используйте клонирование объектов
Клонирование объектов может ускорить работу программы и сократить потребление памяти. Вместо того, чтобы создавать новый объект с нуля, клонируйте уже существующий объект, который уже инициализирован.
5. Используйте интерфейсы вместо абстрактных классов
Интерфейсы позволяют множественное наследование, что может быть проще и удобнее при работе с объектами, чем абстрактные классы. Кроме того, интерфейсы могут быть более гибкими и легче поддерживаемыми.
FAQ
Как можно изменить значение свойства объекта в PHP?
Чтобы изменить значение свойства объекта в PHP, необходимо обратиться к нему по имени и использовать оператор присваивания. Например, для объекта $user со свойством name можно написать $user->name = ‘Новое имя’;
Как можно проверить наличие свойства у объекта в PHP?
Для проверки наличия свойства у объекта в PHP можно использовать функцию property_exists(). Например, для объекта $user можно написать property_exists($user, ‘name’), если свойство name существует, функция вернет true, иначе — false.
Можно ли обратиться к свойству объекта через переменную в PHP?
Да, можно. Для этого нужно использовать фигурные скобки и внутри указать переменную с именем свойства. Например, если у объекта $user есть свойство $name, то можно написать $user->{$name} для обращения к нему через переменную $name.
Какие еще методы существуют для доступа к свойствам объекта в PHP?
Кроме обычной записи вида $obj->property, существует еще 2 метода доступа к свойствам объекта в PHP: __get() и __set(). Магические методы __get() и __set() вызываются, когда PHP пытается получить или изменить несуществующее или защищенное свойство объекта.
Как использовать магический метод __toString() с объектом в PHP?
Магический метод __toString() вызывается, когда объект используется как строка. Для его использования необходимо определить функцию __toString() внутри класса объекта. Например, если у класса User есть свойство $name, можно определить __toString() следующим образом: public function __toString(){ return $this->name; }
Cодержание