PHP 8.6.0 Beta 1 is available for testing

ReflectionParameter::isCallable

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

ReflectionParameter::isCallableVerifica si el parámetro es de tipo callable

Advertencia

Esta función está OBSOLETA a partir de PHP 8.0.0. Depender de esta función está altamente desaconsejado.

Ver el ejemplo a continuación para un método alternativo para obtener esta información.

Descripción

#[\Deprecated]
public function ReflectionParameter::isCallable(): bool
Advertencia

Esta función está actualmente no documentada; solo la lista de sus argumentos está disponible.

Parámetros

Esta función no contiene ningún parámetro.

Valores devueltos

Retorna true si el parámetro es de tipo callable , false si no lo es, o null si ocurre un error.

Historial de cambios

Versión Descripción
8.0.0 Esta función ahora está obsoleta, reemplazada por ReflectionParameter::getType() .

Ejemplos

Ejemplo #1 Equivalente PHP 8.0.0

A partir de PHP 8.0.0, el siguiente código indicará si un tipo soporta callables, incluyendo aquellos que forman parte de una unión.

<?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));
}
?>

Found A Problem?

Learn How To Improve This PageSubmit a Pull RequestReport a Bug
+add a note

User Contributed Notes 1 note

up
0
me at abiusx dot com
10 years ago
Apparently this does not return true for callback arguments to many of the internal functions, such as array_map and array_walk.
+add a note

AltStyle によって変換されたページ (->オリジナル) /