ReflectionProperty::getType
(PHP 7 >= 7.4.0, PHP 8)
ReflectionProperty::getType — プロパティの型を取得する
パラメータ
この関数にはパラメータはありません。
戻り値
プロパティが型を持っていれば、ReflectionType
を返します。そうでなければ、 null
を返します。
例
例1 ReflectionProperty::getType() の例
<?php
class User
{
public string $name;
}
$rp = new ReflectionProperty('User', 'name');
echo $rp->getType()->getName();
?>
上の例の出力は以下となります。
string
参考
- ReflectionProperty::hasType() - プロパティが型を持つかをチェックする
- ReflectionProperty::isInitialized() - プロパティが初期化されているかをチェックする
+add a note
User Contributed Notes 1 note
email at dronov dot vg ¶
4 years ago
class User
{
/**
* @var string
*/
public $name;
}
function getTypeNameFromAnnotation(string $className, string $propertyName): ?string
{
$rp = new \ReflectionProperty($className, $propertyName);
if (preg_match('/@var\s+([^\s]+)/', $rp->getDocComment(), $matches)) {
return $matches[1];
}
return null;
}
echo getTypeNameFromAnnotation('User', 'name');
// string
↑ and ↓ to navigate •
Enter to select •
Esc to close
Press Enter without
selection to search using Google