PHP workshop for 2 days with Shopware, Sylius, PHPUnit and Codeception in Duisburg

ReflectionProperty::getDefaultValue

(PHP 8)

ReflectionProperty::getDefaultValueReturns the default value declared for a property

Descripción

public ReflectionProperty::getDefaultValue(): mixed

Gets the implicit or explicitly declared default value for a property.

Parámetros

Esta función no tiene parámetros.

Valores devueltos

The default value if the property has any default value (including null). If there is no default value, then null is returned. It is not possible to differentiate between a null default value and an unitialized typed property. Use ReflectionProperty::hasDefaultValue() to detect the difference.

Ejemplos

Ejemplo #1 ReflectionProperty::getDefaultValue() example

<?php
class Foo {
    public 
$bar 1;
    public ?
int $baz;
    public 
int $boing 0;
}

$ro = new ReflectionClass(Foo::class);
var_dump($ro->getProperty('bar')->getDefaultValue());
var_dump($ro->getProperty('baz')->getDefaultValue());
var_dump($ro->getProperty('boing')->getDefaultValue());
?>

El resultado del ejemplo sería:

int(1)
NULL
int(0)

Ver también

add a note add a note

User Contributed Notes 1 note

up
1
rwalker dot php at gmail dot com
6 months ago
An equivalent for PHP 7:

<?php
$reflectionProperty
= new \ReflectionProperty(Foo::class, 'bar');

//PHP 8:
$defaultValue = $reflectionProperty->getDefaultValue();

//PHP 7:
$defaultValue = $reflectionProperty->getDeclaringClass()->getDefaultProperties()['bar'] ?? null;
?>
To Top