(PHP 8 >= 8.4.0)
ReflectionProperty::getSettableType — Возвращает тип параметра хука set
Метод возвращает тип параметра в хуке set
.
Со свойствами без хука set
метод ведёт себя
аналогично методу ReflectionProperty::getType().
У этой функции нет параметров.
set
тип параметра определили явным образом.
null
,
если свойство не типизировали.
set
метод вернёт экземпляр класса ReflectionType
для типа never
.
Пример #1 Пример получения типа параметра хука set методом ReflectionProperty::getSettableType()
<?php
class Example
{
public string $basic {
set => strtolower($value);
}
public string $wider {
set(string|Stringable $value) => (string) $value;
}
public string $virtual {
get => 'Не изменяйте значение';
}
public $untyped = 'нелепое значение';
}
$rClass = new \ReflectionClass(Example::class);
var_dump($rClass->getProperty('basic')->getSettableType());
var_dump($rClass->getProperty('wider')->getSettableType());
var_dump($rClass->getProperty('virtual')->getSettableType());
var_dump($rClass->getProperty('untyped')->getSettableType());
?>