PHP 8.4.1 Released!

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

adicione uma nota

Notas Enviadas por Usuários (em inglês)

Não há notas de usuários para esta página.
To Top