ConFoo: Call for paper is now Open


(PHP >= 5.4.0)

ReflectionFunction::getClosureReturns a dynamically created closure for the function


public Closure ReflectionFunction::getClosure ( void )


Diese Funktion ist bis jetzt nicht dokumentiert. Es steht nur die Liste der Argumente zur Verf├╝gung.


Diese Funktion hat keine Parameter.


Returns Closure. Returns NULL in case of an error.

add a note add a note

User Contributed Notes 1 note

php dot net-bug at spamhereplease dot com
9 months 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