International PHP Conference Munich 2024

ReflectionFunction::getClosure

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

ReflectionFunction::getClosureВозвращает динамически созданное замыкание для функции

Описание

public ReflectionFunction::getClosure(): Closure

Получает динамически созданное замыкание для функции.

Список параметров

У этой функции нет параметров.

Возвращаемые значения

Возвращает только что созданное замыкание (Closure).

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