PHPerKaigi 2024

ReflectionFunction::getClosure

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

ReflectionFunction::getClosureGenera dinámicamente una función anónima de esta función

Descripción

public ReflectionFunction::getClosure(): Closure

Advertencia

Esta función no está documentada actualmente, solamente se encuentra disponible la lista de parámetros.

Parámetros

Esta función no tiene parámetros.

Valores devueltos

Devuelve un objeto Closure. En caso de error, devuelve null.

add a note

User Contributed Notes 1 note

up
9
php dot net-bug at spamhereplease dot com
10 years ago
If you have a callback that is going to be invoked often, you can use this method (and the related method for ReflectProperty) to get a closure that will execute at near native speed.

Some benchmark comparisons with php 5.4.22 on ubuntu:

[function call] [time] [%slower]
function(): 0.09527 0%
Reflection::Closure: 0.09729 2%
$string(): 0.102641 8%
Reflection: 0.197122 107%
call_user_func: 0.214045 125%

[method call] [time] [% slower] [%vs func]
->method(): 0.103611 0% 9%
Reflection::Closure: 0.1043 1% 9%
$string(): 0.109885 6% 15%
Reflection: 0.20451 97% 115%
call_user_func: 0.219205 112% 130%
To Top