ReflectionParameter::isCallable
(PHP 5 >= 5.4.0, PHP 7, PHP 8)
Returns whether parameter MUST be callable
Function-8-0-0 See the example below for an alternative way to derive this information.
Description
ReflectionParameter::isCallable(): bool
Func
Parameters Parameters
Return Values
Returns true if the parameter is callable, false if it is not or null on failure.
Changelog
| Version | Description |
|---|---|
| 8.0.0 | This function has been deprecated in favor of ReflectionParameter::getType instead. |
Examples
PHP 8.0.0 equivalent
As of PHP 8.0.0, the following code will report if a type supports callables, including as part of a union.
php
<?php
function declaresCallable(ReflectionParameter $reflectionParameter): bool
{
$reflectionType = $reflectionParameter->getType();
if (!$reflectionType) return false;
$types = $reflectionType instanceof ReflectionUnionType
? $reflectionType->getTypes()
: [$reflectionType];
return in_array('callable', array_map(fn(ReflectionNamedType $t) => $t->getName(), $types));
}
?>