(PHP 8 >= 8.4.0)
ReflectionProperty::getSettableType — Devuelve el tipo de argumento de un hook setter
Devuelve el tipo de argumento de un hook set
.
Si no se define ningún hook set
, se comporta de manera idéntica
a ReflectionProperty::getType().
Esta función no tiene parámetros.
set
que define un tipo explícito, este será devuelto.
null
si la propiedad no está tipada.
set
, se devolverá una instancia de ReflectionType
para never
.
Ejemplo #1 Ejemplo de ReflectionProperty::getSettableType()
<?php
class Example
{
public string $basic {
set => strtolower($value);
}
public string $wider {
set(string|Stringable $value) => (string) $value;
}
public string $virtual {
get => 'Do not change this';
}
public $untyped = 'silly';
}
$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());
?>
El resultado del ejemplo sería:
object(ReflectionNamedType)#3 (0) { } object(ReflectionUnionType)#2 (0) { } object(ReflectionNamedType)#3 (0) { } NULL