Что делает __set()?
Что выведет присваивание $person->name = bob?
<?php
class Person
{
private ?string $name = null;
public function __set(string $property, mixed $value): void
{
$method = 'set' . ucfirst($property);
if (method_exists($this, $method)) {
$this->$method($value);
}
}
public function setName(?string $name): void
{
$this->name = strtoupper($name);
}
public function getName(): ?string
{
return $this->name;
}
}
$person = new Person();
$person->name = 'bob';
echo $person->getName();
Подсказки
- __set() маршрутизирует присваивание в setName().
Что проверяет это задание
__set() маршрутизирует присваивание в setName().