(PHP 5 >= 5.4.0, PHP 7, PHP 8)

ReflectionParameter::isCallableReturns whether parameter MUST be callable


This function has been DEPRECATED as of PHP 8.0.0. Relying on this function is highly discouraged.

See the example below for an alternative way to derive this information.


public ReflectionParameter::isCallable(): bool


Questa funzione, al momento non è documentata; è disponibile soltanto la lista degli argomenti.

Elenco dei parametri

Questa funzione non contiene parametri.

Valori restituiti

Returns true if the parameter is callable, false if it is not or null on failure.


Example #1 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.

function declaresCallable(ReflectionParameter $reflectionParameter): bool
$reflectionType = $reflectionParameter->getType();

if (!
$reflectionType) return false;

$types = $reflectionType instanceof ReflectionUnionType
? $reflectionType->getTypes()
: [

in_array('callable', array_map(fn(ReflectionNamedType $t) => $t->getName(), $types));

add a note add a note

User Contributed Notes 1 note

me at abiusx dot com
7 years ago
Apparently this does not return true for callback arguments to many of the internal functions, such as array_map and array_walk.
To Top