PHP Conference Japan 2024

ReflectionProperty::getType

(PHP 7 >= 7.4.0, PHP 8)

ReflectionProperty::getType获取属性的类型

描述

public ReflectionProperty::getType(): ?ReflectionType

获取属性的关联类型。

参数

此函数没有参数。

返回值

如果属性具有类型,则返回一个ReflectionType,否则返回null

示例

示例 #1 ReflectionProperty::getType() 示例

<?php
class User
{
public
string $name;
}

$rp = new ReflectionProperty('User', 'name');
echo
$rp->getType()->getName();
?>

以上示例将输出

string

参见

添加备注

用户贡献的备注 1 条备注

6
email at dronov dot vg
4年前
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
To Top