(PHP 8 >= 8.4.0)
ReflectionProperty::isFinal — プロパティが final かどうかを判定する
この関数は、 現在のところ詳細な情報はありません。引数のリストのみが 記述されています。
プロパティが
final
かどうかを返します。
プロパティが private(set)
としてマークされている場合、
その場合も暗黙のうちに final
と判定されます。
この関数にはパラメータはありません。
Returns true
if the property is explicitly marked final
,
or if it is implicitly final
due to being private(set)
.
Returns false
otherwise.
例1 ReflectionProperty::isFinal() の例
<?php
class Example
{
public string $name;
final protected int $age;
public private(set) string $job;
}
$rClass = new \ReflectionClass(Example::class);
var_dump($rClass->getProperty('name')->isFinal());
var_dump($rClass->getProperty('age')->isFinal());
var_dump($rClass->getProperty('job')->isFinal());
?>
上の例の出力は以下となります。
bool(false) bool(true) bool(true)