[Editor's note: fixed on user's request]
Getting `Uncaught ReflectionException: Internal error: Failed to retrieve the default value`?
You have to wrap this inside ->isDefaultValueAvailable().
(PHP 5 >= 5.0.3, PHP 7, PHP 8)
ReflectionParameter::getDefaultValue — Obtiene el valor del parámetro por defecto
Obtiene el valor por defecto del parámetro de una función definida por el usuario o en el método. Si el parámetro no es opcional una ReflectionException será lanzada.
Esta función no tiene parámetros.
El valor de los parámetros por defecto.
Ejemplo #1 Obtención de los valores por defecto de los parámetros de la función
<?php
function foo($test, $bar = 'baz')
{
echo $test . $bar;
}
$function = new ReflectionFunction('foo');
foreach ($function->getParameters() as $param) {
echo 'Nombre: ' . $param->getName() . PHP_EOL;
if ($param->isOptional()) {
echo 'Valor por defecto: ' . $param->getDefaultValue() . PHP_EOL;
}
echo PHP_EOL;
}
?>
El resultado del ejemplo sería:
Nombre: test Nombre: bar Valor por defecto: baz
Nota:
Debido a detalles de implementación, no es posible obtener el valor por omisión de una función o método de clases incorporadas. intentar hacer esto una ReflectionException será lanzada.
[Editor's note: fixed on user's request]
Getting `Uncaught ReflectionException: Internal error: Failed to retrieve the default value`?
You have to wrap this inside ->isDefaultValueAvailable().