Vérifie si la propriété a une valeur par défaut

# ReflectionProperty::hasDefaultValue

(PHP 8)

ReflectionProperty::hasDefaultValue — Vérifie si la propriété a une valeur par défaut

### Description

public function ReflectionProperty::hasDefaultValue(): bool

Vérifie si la propriété a été déclarée avec une valeur par défaut, incluant une valeur par défaut implicite `null`. Retourne `false` pour les propriétés typées sans valeur par défaut (ou les propriétés dynamiques).

### Liste de paramètres

Cette fonction ne contient aucun paramètre.

### Valeurs de retour

Si la propriété a une valeur par défaut (incluant `null`), `true` est retourné; si la propriété est typée sans valeur par défaut déclarée ou est une propriété dynamique, `false` est retourné.

### Exemples

Exemple #1 Exemple de ReflectionProperty::hasDefaultValue()

    <?php
    class Foo {
        public $bar;
        public ?int $baz;
        public ?int $foo = null;
        public int $boing;

        public function __construct()
        {
            $this->ping = '';
        }
    }

    $ro = new ReflectionObject(new Foo());
    var_dump($ro->getProperty('bar')->hasDefaultValue());
    var_dump($ro->getProperty('baz')->hasDefaultValue());
    var_dump($ro->getProperty('foo')->hasDefaultValue());
    var_dump($ro->getProperty('boing')->hasDefaultValue());
    var_dump($ro->getProperty('ping')->hasDefaultValue()); // Dynamic property
    var_dump($ro->getProperty('pong')->hasDefaultValue()); // Not defined property
    ?>

L'exemple ci-dessus va afficher :

    bool(true)
    bool(false)
    bool(true)
    bool(false)
    bool(false)

    Fatal error: Uncaught ReflectionException: Property Foo::$pong does not exist in example.php

### Voir aussi

- ReflectionProperty::getDefaultValue() - Renvoie la valeur par défaut définie pour une propriété

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