PHP Conference Nagoya 2025

ReflectionProperty::getDocComment

(PHP 5 >= 5.1.0, PHP 7, PHP 8)

ReflectionProperty::getDocCommentПолучает doc-комментарий свойства

Описание

public ReflectionProperty::getDocComment(): string|false

Метод получает doc-комментарий свойства.

Список параметров

У этой функции нет параметров.

Возвращаемые значения

Метод возвращает doc-комментарий, если комментарий написали, иначе false.

Примеры

Пример #1 Пример использования метода ReflectionProperty::getDocComment()

<?php

class Str
{
/**
* @var int Длина строки
*/
public $length = 5;
}

$prop = new ReflectionProperty('Str', 'length');

var_dump($prop->getDocComment());

?>

Вывод приведённого примера будет похож на:

string(52) "/**
     * @var int  Длина строки
     */"

Пример #2 Объявление нескольких свойств

Doc-комментарий относится только к первому свойству, если doc-комментарий идёт перед множественным объявлением свойств.

<?php

class Foo
{
/** @var string */
public $a, $b;
}

$class = new \ReflectionClass('Foo');
foreach (
$class->getProperties() as $property) {
echo
$property->getName() . ': ' . var_export($property->getDocComment(), true) . PHP_EOL;
}

?>

Результат выполнения приведённого примера:

a: '/** @var string */'
b: false

Смотрите также

Добавить

Примечания пользователей 1 note

up
1
Jim
2 years ago
Unfortunately, inherited doc comments are not supported.

<?php

class A {
/**
* @var string
*/
public string $prop = 'A';
}

class
B extends A {
public
string $prop = 'B';
}

$prop = new ReflectionProperty('B', 'prop');
var_dump($prop->getDocComment());

?>

results in FALSE
To Top