Получает значение

# ReflectionProperty::getValue

(PHP 5, PHP 7, PHP 8)

ReflectionProperty::getValue — Получает значение

### Описание

public function ReflectionProperty::getValue(?object `$object` = `null`): mixed

Получает значение свойства.

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

`object`

  Если свойство не статическое, необходимо передать объект, из которого требуется это свойство получить. Если вам нужно получить свойство по умолчанию, не предоставляя объект, используйте функцию ReflectionClass::getDefaultProperties().

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

Текущее значение свойства.

### Список изменений

Версия | Описание
--- | ---
8.1.0 | Доступ к закрытым и защищённым свойствам можно сразу же получить с помощью метода ReflectionProperty::getValue(). Ранее их нужно было сделать доступными с помощью метода ReflectionProperty::setAccessible(); в противном случае выбрасывалось исключение ReflectionException.
8.0.0 | `object` теперь допускает значение null.

### Примеры

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

    <?php
    class Foo {
        public static $staticProperty = 'foobar';

        public $property = 'barfoo';
        protected $privateProperty = 'foofoo';
    }

    $reflectionClass = new ReflectionClass('Foo');

    var_dump($reflectionClass->getProperty('staticProperty')->getValue());
    var_dump($reflectionClass->getProperty('property')->getValue(new Foo));

    $reflectionProperty = $reflectionClass->getProperty('privateProperty');
    $reflectionProperty->setAccessible(true); // требуется только до PHP 8.1.0
    var_dump($reflectionProperty->getValue(new Foo));
    ?>

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

    string(6) "foobar"
    string(6) "barfoo"
    string(6) "foofoo"

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

- ReflectionProperty::setValue() - Устанавливает значение свойству
- ReflectionProperty::setAccessible() - Устанавливает доступность свойства
- ReflectionClass::getDefaultProperties() - Возвращает свойства по умолчанию
- ReflectionClass::getStaticPropertyValue() - Возвращает значение статического свойства

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open