3v4l.org

run code in 200+ php & hhvm versions
Bugs & Features
<?php class A { function foo($a, $b) {} } function row($name, $t) { printf("%-40s %8s x 10 µs\n", $name, number_format((microtime(true)-$t)*1e5, 2)); } $max = 5*1e1; $object = new A; $t = microtime (true); for ($i=0; $i<$max; $i++) { $object->foo(1, 'foo'); } row($max.' x A::foo', $t); $t = microtime (true); for ($i=0; $i<$max; $i++) { call_user_func_array(array($object, 'foo'), array(1, 'foo')); } row($max.' x call_user_func_array', $t); $t = microtime (true); $ref = new ReflectionMethod($object, 'foo'); for ($i=0; $i<$max; $i++) { $ref->invokeArgs($object, array(1, 'foo')); } row($max.' x ReflectionMethod::invokeArgs', $t); $t = microtime (true); for ($j=0; $j<$max/10; $j++) { $ref = new ReflectionMethod($object, 'foo'); for ($i=0; $i<10; $i++) { $ref->invokeArgs($object, array(1, 'foo')); } } row(($max/10).' x (10 x ReflectionMethod::invokeArgs)', $t);
Output for 7.2.0
50 x A::foo 2.00 x 10 µs 50 x call_user_func_array 1.79 x 10 µs 50 x ReflectionMethod::invokeArgs 2.19 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 2.10 x 10 µs
Output for 7.1.7
50 x A::foo 1.69 x 10 µs 50 x call_user_func_array 0.79 x 10 µs 50 x ReflectionMethod::invokeArgs 1.19 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 1.00 x 10 µs
Output for 7.1.6
50 x A::foo 3.39 x 10 µs 50 x call_user_func_array 1.91 x 10 µs 50 x ReflectionMethod::invokeArgs 2.50 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 2.19 x 10 µs
Output for 7.1.5
50 x A::foo 2.88 x 10 µs 50 x call_user_func_array 2.88 x 10 µs 50 x ReflectionMethod::invokeArgs 2.22 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 1.79 x 10 µs
Output for 7.1.0
50 x A::foo 1.29 x 10 µs 50 x call_user_func_array 1.50 x 10 µs 50 x ReflectionMethod::invokeArgs 2.00 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 1.91 x 10 µs
Output for 7.0.20
50 x A::foo 1,564.10 x 10 µs 50 x call_user_func_array 529.98 x 10 µs 50 x ReflectionMethod::invokeArgs 1.81 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 1.31 x 10 µs
Output for 7.0.14
50 x A::foo 1.48 x 10 µs 50 x call_user_func_array 1.50 x 10 µs 50 x ReflectionMethod::invokeArgs 2.19 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 2.12 x 10 µs
Output for 7.0.6
50 x A::foo 1.00 x 10 µs 50 x call_user_func_array 1.10 x 10 µs 50 x ReflectionMethod::invokeArgs 1.79 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 1.69 x 10 µs
Output for 7.0.5
50 x A::foo 1.29 x 10 µs 50 x call_user_func_array 1.31 x 10 µs 50 x ReflectionMethod::invokeArgs 2.22 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 2.00 x 10 µs
Output for 7.0.4
50 x A::foo 1.22 x 10 µs 50 x call_user_func_array 2.00 x 10 µs 50 x ReflectionMethod::invokeArgs 2.60 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 2.22 x 10 µs
Output for 7.0.3
50 x A::foo 1.22 x 10 µs 50 x call_user_func_array 1.00 x 10 µs 50 x ReflectionMethod::invokeArgs 1.41 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 1.31 x 10 µs
Output for 7.0.2
50 x A::foo 1.19 x 10 µs 50 x call_user_func_array 1.12 x 10 µs 50 x ReflectionMethod::invokeArgs 1.50 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 1.41 x 10 µs
Output for 7.0.1
50 x A::foo 1.60 x 10 µs 50 x call_user_func_array 2.48 x 10 µs 50 x ReflectionMethod::invokeArgs 2.38 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 2.19 x 10 µs
Output for 7.0.0
50 x A::foo 1.22 x 10 µs 50 x call_user_func_array 1.50 x 10 µs 50 x ReflectionMethod::invokeArgs 2.19 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 1.69 x 10 µs
Output for 5.6.28
50 x A::foo 2.50 x 10 µs 50 x call_user_func_array 5.39 x 10 µs 50 x ReflectionMethod::invokeArgs 4.41 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 4.89 x 10 µs
Output for 5.6.21
50 x A::foo 2.69 x 10 µs 50 x call_user_func_array 9.39 x 10 µs 50 x ReflectionMethod::invokeArgs 6.99 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 7.49 x 10 µs
Output for 5.6.20
50 x A::foo 1.41 x 10 µs 50 x call_user_func_array 3.60 x 10 µs 50 x ReflectionMethod::invokeArgs 2.79 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 2.60 x 10 µs
Output for 5.6.19
50 x A::foo 1.69 x 10 µs 50 x call_user_func_array 3.29 x 10 µs 50 x ReflectionMethod::invokeArgs 2.60 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 2.60 x 10 µs
Output for 5.6.18
50 x A::foo 2.69 x 10 µs 50 x call_user_func_array 5.20 x 10 µs 50 x ReflectionMethod::invokeArgs 3.91 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 3.98 x 10 µs
Output for 5.6.17
50 x A::foo 2.60 x 10 µs 50 x call_user_func_array 7.10 x 10 µs 50 x ReflectionMethod::invokeArgs 4.82 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 4.39 x 10 µs
Output for 5.6.16
50 x A::foo 2.81 x 10 µs 50 x call_user_func_array 5.98 x 10 µs 50 x ReflectionMethod::invokeArgs 4.39 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 4.10 x 10 µs
Output for 5.6.15
50 x A::foo 1.60 x 10 µs 50 x call_user_func_array 4.51 x 10 µs 50 x ReflectionMethod::invokeArgs 2.88 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 2.91 x 10 µs
Output for 5.6.14
50 x A::foo 2.00 x 10 µs 50 x call_user_func_array 5.51 x 10 µs 50 x ReflectionMethod::invokeArgs 4.10 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 3.98 x 10 µs
Output for 5.6.13
50 x A::foo 1.60 x 10 µs 50 x call_user_func_array 3.79 x 10 µs 50 x ReflectionMethod::invokeArgs 2.79 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 2.60 x 10 µs
Output for 5.6.12
50 x A::foo 2.41 x 10 µs 50 x call_user_func_array 5.72 x 10 µs 50 x ReflectionMethod::invokeArgs 4.20 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 3.79 x 10 µs
Output for 5.6.11
50 x A::foo 2.00 x 10 µs 50 x call_user_func_array 4.91 x 10 µs 50 x ReflectionMethod::invokeArgs 3.48 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 3.31 x 10 µs
Output for 5.6.10
50 x A::foo 2.48 x 10 µs 50 x call_user_func_array 6.01 x 10 µs 50 x ReflectionMethod::invokeArgs 4.29 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 5.32 x 10 µs
Output for 5.6.9
50 x A::foo 2.50 x 10 µs 50 x call_user_func_array 7.70 x 10 µs 50 x ReflectionMethod::invokeArgs 5.10 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 4.91 x 10 µs
Output for 5.6.8
50 x A::foo 1.60 x 10 µs 50 x call_user_func_array 3.70 x 10 µs 50 x ReflectionMethod::invokeArgs 2.69 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 2.50 x 10 µs
Output for 5.6.7
50 x A::foo 1.91 x 10 µs 50 x call_user_func_array 3.89 x 10 µs 50 x ReflectionMethod::invokeArgs 3.60 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 2.79 x 10 µs
Output for 5.5.35
50 x A::foo 2.41 x 10 µs 50 x call_user_func_array 5.20 x 10 µs 50 x ReflectionMethod::invokeArgs 3.70 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 3.50 x 10 µs
Output for 5.5.34
50 x A::foo 1.50 x 10 µs 50 x call_user_func_array 4.70 x 10 µs 50 x ReflectionMethod::invokeArgs 3.29 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 2.79 x 10 µs
Output for 5.5.33
50 x A::foo 2.29 x 10 µs 50 x call_user_func_array 5.60 x 10 µs 50 x ReflectionMethod::invokeArgs 3.79 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 3.91 x 10 µs
Output for 5.5.32
50 x A::foo 1.91 x 10 µs 50 x call_user_func_array 3.89 x 10 µs 50 x ReflectionMethod::invokeArgs 2.69 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 2.60 x 10 µs
Output for 5.5.31
50 x A::foo 1.79 x 10 µs 50 x call_user_func_array 3.70 x 10 µs 50 x ReflectionMethod::invokeArgs 2.60 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 2.48 x 10 µs
Output for 5.5.30
50 x A::foo 1.50 x 10 µs 50 x call_user_func_array 4.51 x 10 µs 50 x ReflectionMethod::invokeArgs 2.79 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 3.00 x 10 µs
Output for 5.5.29
50 x A::foo 2.50 x 10 µs 50 x call_user_func_array 6.10 x 10 µs 50 x ReflectionMethod::invokeArgs 4.39 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 4.10 x 10 µs
Output for 5.5.28
50 x A::foo 2.19 x 10 µs 50 x call_user_func_array 5.60 x 10 µs 50 x ReflectionMethod::invokeArgs 3.89 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 3.72 x 10 µs
Output for 5.5.27
50 x A::foo 1.62 x 10 µs 50 x call_user_func_array 5.20 x 10 µs 50 x ReflectionMethod::invokeArgs 2.88 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 2.79 x 10 µs
Output for 5.5.26
50 x A::foo 2.22 x 10 µs 50 x call_user_func_array 5.51 x 10 µs 50 x ReflectionMethod::invokeArgs 4.70 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 3.70 x 10 µs
Output for 5.5.25
50 x A::foo 1.50 x 10 µs 50 x call_user_func_array 3.79 x 10 µs 50 x ReflectionMethod::invokeArgs 2.79 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 2.50 x 10 µs
Output for 5.5.24
50 x A::foo 2.29 x 10 µs 50 x call_user_func_array 5.70 x 10 µs 50 x ReflectionMethod::invokeArgs 4.20 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 4.20 x 10 µs
Output for 5.4.45
50 x A::foo 4.10 x 10 µs 50 x call_user_func_array 6.89 x 10 µs 50 x ReflectionMethod::invokeArgs 4.70 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 4.41 x 10 µs
Output for 5.4.44
50 x A::foo 3.79 x 10 µs 50 x call_user_func_array 4.72 x 10 µs 50 x ReflectionMethod::invokeArgs 4.10 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 3.70 x 10 µs
Output for 5.4.43
50 x A::foo 3.31 x 10 µs 50 x call_user_func_array 6.99 x 10 µs 50 x ReflectionMethod::invokeArgs 4.72 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 4.51 x 10 µs
Output for 5.4.42
50 x A::foo 3.39 x 10 µs 50 x call_user_func_array 5.20 x 10 µs 50 x ReflectionMethod::invokeArgs 3.70 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 3.39 x 10 µs
Output for 5.4.41
50 x A::foo 2.81 x 10 µs 50 x call_user_func_array 4.20 x 10 µs 50 x ReflectionMethod::invokeArgs 3.72 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 3.50 x 10 µs
Output for 5.4.40
50 x A::foo 3.10 x 10 µs 50 x call_user_func_array 5.29 x 10 µs 50 x ReflectionMethod::invokeArgs 4.29 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 4.20 x 10 µs
Output for 5.4.39
50 x A::foo 2.60 x 10 µs 50 x call_user_func_array 6.39 x 10 µs 50 x ReflectionMethod::invokeArgs 4.32 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 4.89 x 10 µs
Output for 5.4.38
50 x A::foo 3.81 x 10 µs 50 x call_user_func_array 9.89 x 10 µs 50 x ReflectionMethod::invokeArgs 7.51 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 7.70 x 10 µs
Output for 5.4.37
50 x A::foo 3.91 x 10 µs 50 x call_user_func_array 5.48 x 10 µs 50 x ReflectionMethod::invokeArgs 3.91 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 4.01 x 10 µs
Output for 5.4.36
50 x A::foo 5.70 x 10 µs 50 x call_user_func_array 13.59 x 10 µs 50 x ReflectionMethod::invokeArgs 5.29 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 4.91 x 10 µs
Output for 5.4.35
50 x A::foo 4.48 x 10 µs 50 x call_user_func_array 5.91 x 10 µs 50 x ReflectionMethod::invokeArgs 4.51 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 4.41 x 10 µs
Output for 5.4.34
50 x A::foo 5.39 x 10 µs 50 x call_user_func_array 11.09 x 10 µs 50 x ReflectionMethod::invokeArgs 6.79 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 10.90 x 10 µs
Output for 5.4.32
50 x A::foo 2.60 x 10 µs 50 x call_user_func_array 5.20 x 10 µs 50 x ReflectionMethod::invokeArgs 4.41 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 4.29 x 10 µs
Output for 5.4.31
50 x A::foo 2.50 x 10 µs 50 x call_user_func_array 3.70 x 10 µs 50 x ReflectionMethod::invokeArgs 3.10 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 3.50 x 10 µs
Output for 5.4.30
50 x A::foo 2.41 x 10 µs 50 x call_user_func_array 3.91 x 10 µs 50 x ReflectionMethod::invokeArgs 4.51 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 4.70 x 10 µs
Output for 5.4.29
50 x A::foo 2.50 x 10 µs 50 x call_user_func_array 4.01 x 10 µs 50 x ReflectionMethod::invokeArgs 3.29 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 3.39 x 10 µs
Output for 5.4.28
50 x A::foo 3.00 x 10 µs 50 x call_user_func_array 4.01 x 10 µs 50 x ReflectionMethod::invokeArgs 3.29 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 2.91 x 10 µs
Output for 5.4.27
50 x A::foo 2.38 x 10 µs 50 x call_user_func_array 3.79 x 10 µs 50 x ReflectionMethod::invokeArgs 3.50 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 3.10 x 10 µs
Output for 5.4.26
50 x A::foo 2.38 x 10 µs 50 x call_user_func_array 3.50 x 10 µs 50 x ReflectionMethod::invokeArgs 3.41 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 2.88 x 10 µs
Output for 5.4.25
50 x A::foo 2.38 x 10 µs 50 x call_user_func_array 3.29 x 10 µs 50 x ReflectionMethod::invokeArgs 3.60 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 3.81 x 10 µs
Output for 5.4.24
50 x A::foo 2.60 x 10 µs 50 x call_user_func_array 3.41 x 10 µs 50 x ReflectionMethod::invokeArgs 3.00 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 2.60 x 10 µs
Output for 5.4.23
50 x A::foo 2.41 x 10 µs 50 x call_user_func_array 4.32 x 10 µs 50 x ReflectionMethod::invokeArgs 2.88 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 3.10 x 10 µs
Output for 5.4.22
50 x A::foo 3.60 x 10 µs 50 x call_user_func_array 4.91 x 10 µs 50 x ReflectionMethod::invokeArgs 3.10 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 3.31 x 10 µs
Output for 5.4.21
50 x A::foo 2.50 x 10 µs 50 x call_user_func_array 2.60 x 10 µs 50 x ReflectionMethod::invokeArgs 4.29 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 3.31 x 10 µs
Output for 5.4.20
50 x A::foo 2.60 x 10 µs 50 x call_user_func_array 3.91 x 10 µs 50 x ReflectionMethod::invokeArgs 4.51 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 4.60 x 10 µs
Output for 5.4.19
50 x A::foo 2.60 x 10 µs 50 x call_user_func_array 2.31 x 10 µs 50 x ReflectionMethod::invokeArgs 3.10 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 2.00 x 10 µs
Output for 5.4.18
50 x A::foo 2.60 x 10 µs 50 x call_user_func_array 2.41 x 10 µs 50 x ReflectionMethod::invokeArgs 5.32 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 3.19 x 10 µs
Output for 5.4.17
50 x A::foo 2.50 x 10 µs 50 x call_user_func_array 4.01 x 10 µs 50 x ReflectionMethod::invokeArgs 4.58 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 4.91 x 10 µs
Output for 5.4.16
50 x A::foo 2.60 x 10 µs 50 x call_user_func_array 3.91 x 10 µs 50 x ReflectionMethod::invokeArgs 3.19 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 3.29 x 10 µs
Output for 5.4.15
50 x A::foo 3.89 x 10 µs 50 x call_user_func_array 4.01 x 10 µs 50 x ReflectionMethod::invokeArgs 4.10 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 4.48 x 10 µs
Output for 5.4.14
50 x A::foo 2.91 x 10 µs 50 x call_user_func_array 6.20 x 10 µs 50 x ReflectionMethod::invokeArgs 4.79 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 3.29 x 10 µs
Output for 5.4.13
50 x A::foo 3.79 x 10 µs 50 x call_user_func_array 11.18 x 10 µs 50 x ReflectionMethod::invokeArgs 13.09 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 8.80 x 10 µs
Output for 5.4.12
50 x A::foo 2.60 x 10 µs 50 x call_user_func_array 4.10 x 10 µs 50 x ReflectionMethod::invokeArgs 5.70 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 6.51 x 10 µs
Output for 5.4.11
50 x A::foo 2.69 x 10 µs 50 x call_user_func_array 4.01 x 10 µs 50 x ReflectionMethod::invokeArgs 3.41 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 3.48 x 10 µs
Output for 5.4.10
50 x A::foo 2.50 x 10 µs 50 x call_user_func_array 4.22 x 10 µs 50 x ReflectionMethod::invokeArgs 3.29 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 3.60 x 10 µs
Output for 5.4.9
50 x A::foo 2.79 x 10 µs 50 x call_user_func_array 4.39 x 10 µs 50 x ReflectionMethod::invokeArgs 5.01 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 4.98 x 10 µs
Output for 5.4.8
50 x A::foo 3.39 x 10 µs 50 x call_user_func_array 4.39 x 10 µs 50 x ReflectionMethod::invokeArgs 3.41 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 3.48 x 10 µs
Output for 5.4.7
50 x A::foo 2.60 x 10 µs 50 x call_user_func_array 4.01 x 10 µs 50 x ReflectionMethod::invokeArgs 3.00 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 3.70 x 10 µs
Output for 5.4.6
50 x A::foo 2.72 x 10 µs 50 x call_user_func_array 4.01 x 10 µs 50 x ReflectionMethod::invokeArgs 3.19 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 3.39 x 10 µs
Output for 5.4.5
50 x A::foo 3.39 x 10 µs 50 x call_user_func_array 3.91 x 10 µs 50 x ReflectionMethod::invokeArgs 4.20 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 3.50 x 10 µs
Output for 5.4.4
50 x A::foo 2.69 x 10 µs 50 x call_user_func_array 3.91 x 10 µs 50 x ReflectionMethod::invokeArgs 3.19 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 3.29 x 10 µs
Output for 5.4.3
50 x A::foo 2.60 x 10 µs 50 x call_user_func_array 3.91 x 10 µs 50 x ReflectionMethod::invokeArgs 3.60 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 3.41 x 10 µs
Output for 5.4.2
50 x A::foo 2.50 x 10 µs 50 x call_user_func_array 4.20 x 10 µs 50 x ReflectionMethod::invokeArgs 3.81 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 3.31 x 10 µs
Output for 5.4.1
50 x A::foo 2.69 x 10 µs 50 x call_user_func_array 3.98 x 10 µs 50 x ReflectionMethod::invokeArgs 3.29 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 3.39 x 10 µs
Output for 5.4.0
50 x A::foo 2.60 x 10 µs 50 x call_user_func_array 4.10 x 10 µs 50 x ReflectionMethod::invokeArgs 3.10 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 3.39 x 10 µs
Output for 5.3.29
50 x A::foo 3.81 x 10 µs 50 x call_user_func_array 4.91 x 10 µs 50 x ReflectionMethod::invokeArgs 3.70 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 3.79 x 10 µs
Output for 5.3.28
50 x A::foo 2.69 x 10 µs 50 x call_user_func_array 6.60 x 10 µs 50 x ReflectionMethod::invokeArgs 5.01 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 3.70 x 10 µs
Output for 5.3.27
50 x A::foo 2.79 x 10 µs 50 x call_user_func_array 4.20 x 10 µs 50 x ReflectionMethod::invokeArgs 3.41 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 3.60 x 10 µs
Output for 5.3.26
50 x A::foo 4.39 x 10 µs 50 x call_user_func_array 4.01 x 10 µs 50 x ReflectionMethod::invokeArgs 3.91 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 3.81 x 10 µs
Output for 5.3.25
50 x A::foo 2.91 x 10 µs 50 x call_user_func_array 4.10 x 10 µs 50 x ReflectionMethod::invokeArgs 3.79 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 3.81 x 10 µs
Output for 5.3.24
50 x A::foo 2.72 x 10 µs 50 x call_user_func_array 4.08 x 10 µs 50 x ReflectionMethod::invokeArgs 3.60 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 3.81 x 10 µs
Output for 5.3.23
50 x A::foo 2.60 x 10 µs 50 x call_user_func_array 4.20 x 10 µs 50 x ReflectionMethod::invokeArgs 5.48 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 5.60 x 10 µs
Output for 5.3.22
50 x A::foo 2.79 x 10 µs 50 x call_user_func_array 4.20 x 10 µs 50 x ReflectionMethod::invokeArgs 5.29 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 9.30 x 10 µs
Output for 5.3.21
50 x A::foo 2.91 x 10 µs 50 x call_user_func_array 4.29 x 10 µs 50 x ReflectionMethod::invokeArgs 9.99 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 6.10 x 10 µs
Output for 5.3.20
50 x A::foo 2.60 x 10 µs 50 x call_user_func_array 4.10 x 10 µs 50 x ReflectionMethod::invokeArgs 3.81 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 3.91 x 10 µs
Output for 5.3.19
50 x A::foo 2.60 x 10 µs 50 x call_user_func_array 4.41 x 10 µs 50 x ReflectionMethod::invokeArgs 3.70 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 3.70 x 10 µs
Output for 5.3.18
50 x A::foo 4.41 x 10 µs 50 x call_user_func_array 7.08 x 10 µs 50 x ReflectionMethod::invokeArgs 6.20 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 6.22 x 10 µs
Output for 5.3.17
50 x A::foo 2.69 x 10 µs 50 x call_user_func_array 7.51 x 10 µs 50 x ReflectionMethod::invokeArgs 3.81 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 3.70 x 10 µs
Output for 5.3.16
50 x A::foo 2.81 x 10 µs 50 x call_user_func_array 5.60 x 10 µs 50 x ReflectionMethod::invokeArgs 3.91 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 3.81 x 10 µs
Output for 5.3.15
50 x A::foo 2.69 x 10 µs 50 x call_user_func_array 4.51 x 10 µs 50 x ReflectionMethod::invokeArgs 3.70 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 3.70 x 10 µs
Output for 5.3.14
50 x A::foo 4.01 x 10 µs 50 x call_user_func_array 11.21 x 10 µs 50 x ReflectionMethod::invokeArgs 8.49 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 9.80 x 10 µs
Output for 5.3.13
50 x A::foo 3.91 x 10 µs 50 x call_user_func_array 10.51 x 10 µs 50 x ReflectionMethod::invokeArgs 8.39 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 13.09 x 10 µs
Output for 5.3.12
50 x A::foo 3.70 x 10 µs 50 x call_user_func_array 10.70 x 10 µs 50 x ReflectionMethod::invokeArgs 8.30 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 10.01 x 10 µs
Output for 5.3.11
50 x A::foo 3.70 x 10 µs 50 x call_user_func_array 11.11 x 10 µs 50 x ReflectionMethod::invokeArgs 8.80 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 8.39 x 10 µs
Output for 5.3.10
50 x A::foo 7.99 x 10 µs 50 x call_user_func_array 10.20 x 10 µs 50 x ReflectionMethod::invokeArgs 8.80 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 5.60 x 10 µs
Output for 5.3.9
50 x A::foo 2.79 x 10 µs 50 x call_user_func_array 4.20 x 10 µs 50 x ReflectionMethod::invokeArgs 4.29 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 5.41 x 10 µs
Output for 5.3.8
50 x A::foo 2.69 x 10 µs 50 x call_user_func_array 4.20 x 10 µs 50 x ReflectionMethod::invokeArgs 5.20 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 6.89 x 10 µs
Output for 5.3.7
50 x A::foo 5.39 x 10 µs 50 x call_user_func_array 3.91 x 10 µs 50 x ReflectionMethod::invokeArgs 5.20 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 5.51 x 10 µs
Output for 5.3.6
50 x A::foo 2.79 x 10 µs 50 x call_user_func_array 4.20 x 10 µs 50 x ReflectionMethod::invokeArgs 4.89 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 5.32 x 10 µs
Output for 5.3.5
50 x A::foo 7.51 x 10 µs 50 x call_user_func_array 10.80 x 10 µs 50 x ReflectionMethod::invokeArgs 8.70 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 3.81 x 10 µs
Output for 5.3.4
50 x A::foo 3.60 x 10 µs 50 x call_user_func_array 4.22 x 10 µs 50 x ReflectionMethod::invokeArgs 4.89 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 5.29 x 10 µs
Output for 5.3.3
50 x A::foo 3.89 x 10 µs 50 x call_user_func_array 10.40 x 10 µs 50 x ReflectionMethod::invokeArgs 8.11 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 8.01 x 10 µs
Output for 5.3.2
50 x A::foo 2.50 x 10 µs 50 x call_user_func_array 4.10 x 10 µs 50 x ReflectionMethod::invokeArgs 6.60 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 5.01 x 10 µs
Output for 5.3.1
50 x A::foo 2.50 x 10 µs 50 x call_user_func_array 4.20 x 10 µs 50 x ReflectionMethod::invokeArgs 5.10 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 5.39 x 10 µs
Output for 5.3.0
50 x A::foo 1.10 x 10 µs 50 x call_user_func_array 55.41 x 10 µs 50 x ReflectionMethod::invokeArgs 5.60 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 4.29 x 10 µs
Output for 5.2.17
50 x A::foo 3.98 x 10 µs 50 x call_user_func_array 12.90 x 10 µs 50 x ReflectionMethod::invokeArgs 4.29 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 4.10 x 10 µs
Output for 5.2.16
50 x A::foo 3.19 x 10 µs 50 x call_user_func_array 9.80 x 10 µs 50 x ReflectionMethod::invokeArgs 7.10 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 5.29 x 10 µs
Output for 5.2.15
50 x A::foo 5.10 x 10 µs 50 x call_user_func_array 5.51 x 10 µs 50 x ReflectionMethod::invokeArgs 3.91 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 8.30 x 10 µs
Output for 5.2.14
50 x A::foo 3.22 x 10 µs 50 x call_user_func_array 9.99 x 10 µs 50 x ReflectionMethod::invokeArgs 6.29 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 5.70 x 10 µs
Output for 5.2.13
50 x A::foo 3.10 x 10 µs 50 x call_user_func_array 5.41 x 10 µs 50 x ReflectionMethod::invokeArgs 4.10 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 5.60 x 10 µs
Output for 5.2.12
50 x A::foo 3.10 x 10 µs 50 x call_user_func_array 5.51 x 10 µs 50 x ReflectionMethod::invokeArgs 3.91 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 6.01 x 10 µs
Output for 5.2.11
50 x A::foo 3.19 x 10 µs 50 x call_user_func_array 8.70 x 10 µs 50 x ReflectionMethod::invokeArgs 4.79 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 4.32 x 10 µs
Output for 5.2.10
50 x A::foo 3.10 x 10 µs 50 x call_user_func_array 5.60 x 10 µs 50 x ReflectionMethod::invokeArgs 4.70 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 3.81 x 10 µs
Output for 5.2.9
50 x A::foo 3.81 x 10 µs 50 x call_user_func_array 9.51 x 10 µs 50 x ReflectionMethod::invokeArgs 6.39 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 5.70 x 10 µs
Output for 5.2.8
50 x A::foo 3.10 x 10 µs 50 x call_user_func_array 5.48 x 10 µs 50 x ReflectionMethod::invokeArgs 3.98 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 5.51 x 10 µs
Output for 5.2.7
50 x A::foo 3.19 x 10 µs 50 x call_user_func_array 5.51 x 10 µs 50 x ReflectionMethod::invokeArgs 3.70 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 5.48 x 10 µs
Output for 5.2.6
50 x A::foo 3.00 x 10 µs 50 x call_user_func_array 9.51 x 10 µs 50 x ReflectionMethod::invokeArgs 5.70 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 5.70 x 10 µs
Output for 5.2.5
50 x A::foo 4.51 x 10 µs 50 x call_user_func_array 13.80 x 10 µs 50 x ReflectionMethod::invokeArgs 10.11 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 10.20 x 10 µs
Output for 5.2.4
50 x A::foo 3.00 x 10 µs 50 x call_user_func_array 5.41 x 10 µs 50 x ReflectionMethod::invokeArgs 3.70 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 5.29 x 10 µs
Output for 5.2.3
50 x A::foo 3.10 x 10 µs 50 x call_user_func_array 11.42 x 10 µs 50 x ReflectionMethod::invokeArgs 5.51 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 5.82 x 10 µs
Output for 5.2.2
50 x A::foo 3.39 x 10 µs 50 x call_user_func_array 12.18 x 10 µs 50 x ReflectionMethod::invokeArgs 10.20 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 10.09 x 10 µs
Output for 5.2.1
50 x A::foo 5.39 x 10 µs 50 x call_user_func_array 5.70 x 10 µs 50 x ReflectionMethod::invokeArgs 3.89 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 4.29 x 10 µs
Output for 5.2.0
50 x A::foo 5.32 x 10 µs 50 x call_user_func_array 9.51 x 10 µs 50 x ReflectionMethod::invokeArgs 5.79 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 5.82 x 10 µs
Output for 5.1.6
50 x A::foo 3.31 x 10 µs 50 x call_user_func_array 5.20 x 10 µs 50 x ReflectionMethod::invokeArgs 3.70 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 5.41 x 10 µs
Output for 5.1.5
50 x A::foo 3.50 x 10 µs 50 x call_user_func_array 9.99 x 10 µs 50 x ReflectionMethod::invokeArgs 5.70 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 5.48 x 10 µs
Output for 5.1.4
50 x A::foo 3.41 x 10 µs 50 x call_user_func_array 5.60 x 10 µs 50 x ReflectionMethod::invokeArgs 7.70 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 5.48 x 10 µs
Output for 5.1.3
50 x A::foo 3.60 x 10 µs 50 x call_user_func_array 5.60 x 10 µs 50 x ReflectionMethod::invokeArgs 3.79 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 3.89 x 10 µs
Output for 5.1.2
50 x A::foo 4.82 x 10 µs 50 x call_user_func_array 12.68 x 10 µs 50 x ReflectionMethod::invokeArgs 9.30 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 9.80 x 10 µs
Output for 5.1.1
50 x A::foo 5.60 x 10 µs 50 x call_user_func_array 13.69 x 10 µs 50 x ReflectionMethod::invokeArgs 10.30 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 9.70 x 10 µs
Output for 5.1.0
50 x A::foo 5.20 x 10 µs 50 x call_user_func_array 16.90 x 10 µs 50 x ReflectionMethod::invokeArgs 10.80 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 12.99 x 10 µs
Output for 5.0.5
50 x A::foo 12.40 x 10 µs 50 x call_user_func_array 19.72 x 10 µs Fatal error: Call to undefined method ReflectionMethod::invokeArgs() in /in/OjtA7 on line 28
Process exited with code 255.
Output for 5.0.4
50 x A::foo 4.60 x 10 µs 50 x call_user_func_array 9.11 x 10 µs Fatal error: Call to undefined method ReflectionMethod::invokeArgs() in /in/OjtA7 on line 28
Process exited with code 255.
Output for 5.0.3
50 x A::foo 7.39 x 10 µs 50 x call_user_func_array 20.50 x 10 µs Fatal error: Call to undefined method ReflectionMethod::invokeArgs() in /in/OjtA7 on line 28
Process exited with code 255.
Output for 5.0.2
50 x A::foo 10.40 x 10 µs 50 x call_user_func_array 17.31 x 10 µs Fatal error: Call to undefined method ReflectionMethod::invokeArgs() in /in/OjtA7 on line 28
Process exited with code 255.
Output for 5.0.1
50 x A::foo 6.82 x 10 µs 50 x call_user_func_array 17.60 x 10 µs Fatal error: Call to undefined method ReflectionMethod::invokeArgs() in /in/OjtA7 on line 28
Process exited with code 255.
Output for 5.0.0
50 x A::foo 6.91 x 10 µs 50 x call_user_func_array 19.31 x 10 µs Fatal error: Call to undefined method ReflectionMethod::invokeArgs() in /in/OjtA7 on line 28
Process exited with code 255.
Output for 4.4.9
50 x A::foo 8.50 x 10 µs 50 x call_user_func_array 13.90 x 10 µs Fatal error: Cannot instantiate non-existent class: reflectionmethod in /in/OjtA7 on line 26
Process exited with code 255.
Output for 4.4.8
50 x A::foo 10.80 x 10 µs 50 x call_user_func_array 20.70 x 10 µs Fatal error: Cannot instantiate non-existent class: reflectionmethod in /in/OjtA7 on line 26
Process exited with code 255.
Output for 4.4.7
50 x A::foo 8.10 x 10 µs 50 x call_user_func_array 13.60 x 10 µs Fatal error: Cannot instantiate non-existent class: reflectionmethod in /in/OjtA7 on line 26
Process exited with code 255.
Output for 4.4.6
50 x A::foo 10.50 x 10 µs 50 x call_user_func_array 14.10 x 10 µs Fatal error: Cannot instantiate non-existent class: reflectionmethod in /in/OjtA7 on line 26
Process exited with code 255.
Output for 4.4.5
50 x A::foo 8.00 x 10 µs 50 x call_user_func_array 20.40 x 10 µs Fatal error: Cannot instantiate non-existent class: reflectionmethod in /in/OjtA7 on line 26
Process exited with code 255.
Output for 4.4.4
50 x A::foo 7.30 x 10 µs 50 x call_user_func_array 11.10 x 10 µs Fatal error: Cannot instantiate non-existent class: reflectionmethod in /in/OjtA7 on line 26
Process exited with code 255.
Output for 4.4.3
50 x A::foo 5.60 x 10 µs 50 x call_user_func_array 12.10 x 10 µs Fatal error: Cannot instantiate non-existent class: reflectionmethod in /in/OjtA7 on line 26
Process exited with code 255.
Output for 4.4.2
50 x A::foo 7.90 x 10 µs 50 x call_user_func_array 17.10 x 10 µs Fatal error: Cannot instantiate non-existent class: reflectionmethod in /in/OjtA7 on line 26
Process exited with code 255.
Output for 4.4.1
50 x A::foo 9.70 x 10 µs 50 x call_user_func_array 16.40 x 10 µs Fatal error: Cannot instantiate non-existent class: reflectionmethod in /in/OjtA7 on line 26
Process exited with code 255.
Output for 4.4.0
50 x A::foo 7.90 x 10 µs 50 x call_user_func_array 13.80 x 10 µs Fatal error: Cannot instantiate non-existent class: reflectionmethod in /in/OjtA7 on line 26
Process exited with code 255.
Output for 4.3.11
50 x A::foo 6.90 x 10 µs 50 x call_user_func_array 10.00 x 10 µs Fatal error: Cannot instantiate non-existent class: reflectionmethod in /in/OjtA7 on line 26
Process exited with code 255.
Output for 4.3.10
50 x A::foo 6.70 x 10 µs 50 x call_user_func_array 10.80 x 10 µs Fatal error: Cannot instantiate non-existent class: reflectionmethod in /in/OjtA7 on line 26
Process exited with code 255.
Output for 4.3.9
50 x A::foo 4.50 x 10 µs 50 x call_user_func_array 12.40 x 10 µs Fatal error: Cannot instantiate non-existent class: reflectionmethod in /in/OjtA7 on line 26
Process exited with code 255.
Output for 4.3.8
50 x A::foo 7.20 x 10 µs 50 x call_user_func_array 12.30 x 10 µs Fatal error: Cannot instantiate non-existent class: reflectionmethod in /in/OjtA7 on line 26
Process exited with code 255.
Output for 4.3.7
50 x A::foo 6.90 x 10 µs 50 x call_user_func_array 16.10 x 10 µs Fatal error: Cannot instantiate non-existent class: reflectionmethod in /in/OjtA7 on line 26
Process exited with code 255.
Output for 4.3.6
50 x A::foo 7.10 x 10 µs 50 x call_user_func_array 9.20 x 10 µs Fatal error: Cannot instantiate non-existent class: reflectionmethod in /in/OjtA7 on line 26
Process exited with code 255.
Output for 4.3.5
50 x A::foo 4.70 x 10 µs 50 x call_user_func_array 14.40 x 10 µs Fatal error: Cannot instantiate non-existent class: reflectionmethod in /in/OjtA7 on line 26
Process exited with code 255.
Output for 4.3.4
50 x A::foo 7.20 x 10 µs 50 x call_user_func_array 11.70 x 10 µs Fatal error: Cannot instantiate non-existent class: reflectionmethod in /in/OjtA7 on line 26
Process exited with code 255.
Output for 4.3.3
50 x A::foo 5.40 x 10 µs 50 x call_user_func_array 9.50 x 10 µs Fatal error: Cannot instantiate non-existent class: reflectionmethod in /in/OjtA7 on line 26
Process exited with code 255.
Output for 4.3.2
50 x A::foo 4.60 x 10 µs 50 x call_user_func_array 12.30 x 10 µs Fatal error: Cannot instantiate non-existent class: reflectionmethod in /in/OjtA7 on line 26
Process exited with code 255.
Output for 4.3.1
50 x A::foo 7.00 x 10 µs 50 x call_user_func_array 6.20 x 10 µs Fatal error: Cannot instantiate non-existent class: reflectionmethod in /in/OjtA7 on line 26
Output for 4.3.0
50 x A::foo 5.40 x 10 µs 50 x call_user_func_array 9.80 x 10 µs Fatal error: Cannot instantiate non-existent class: reflectionmethod in /in/OjtA7 on line 26