PHP 8.4.0 RC2 available for testing

ReflectionProperty::hasDefaultValue

(PHP 8)

ReflectionProperty::hasDefaultValueVerifica se a propriedade tem um valor padrão declarado

Descrição

public ReflectionProperty::hasDefaultValue(): bool

Verifica se a propriedade foi declarada com um valor padrão, incluindo um valor implícito null. Retorna apenas false para propriedades digitadas sem valor padrão (ou propriedades dinâmicas).

Parâmetros

Esta função não possui parâmetros.

Valor Retornado

Se a propriedade tiver algum valor padrão (incluindo null) true é retornado; Se a propriedade for digitada sem um valor padrão declarado ou for uma propriedade dinâmica, false é retornado.

Exemplos

Exemplo #1 Exemplo 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()); // Propriedade dinâmica
var_dump($ro->getProperty('pong')->hasDefaultValue()); // Propriedade não definida
?>

O exemplo acima produzirá:

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

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

Veja Também

add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top