3v4l.org

run code in 150+ php & hhvm versions
Bugs & Features
<?php class A { function foo($a, $b) {} } function row($name, $t) { printf("%-40s %01.2f x 10 µs\n", $name, (microtime(true)-$t)*1e5); } $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.1.0
50 x A::foo 1.41 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) 2.79 x 10 µs
Output for 7.0.14
50 x A::foo 1.50 x 10 µs 50 x call_user_func_array 1.72 x 10 µs 50 x ReflectionMethod::invokeArgs 2.31 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 2.31 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.81 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 1.69 x 10 µs
Output for 7.0.5
50 x A::foo 1.00 x 10 µs 50 x call_user_func_array 1.12 x 10 µs 50 x ReflectionMethod::invokeArgs 1.69 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 1.62 x 10 µs
Output for 7.0.4
50 x A::foo 1.22 x 10 µs 50 x call_user_func_array 1.31 x 10 µs 50 x ReflectionMethod::invokeArgs 2.00 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 1.79 x 10 µs
Output for 7.0.3
50 x A::foo 1.41 x 10 µs 50 x call_user_func_array 1.31 x 10 µs 50 x ReflectionMethod::invokeArgs 3.10 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 2.41 x 10 µs
Output for 7.0.2
50 x A::foo 1.19 x 10 µs 50 x call_user_func_array 1.31 x 10 µs 50 x ReflectionMethod::invokeArgs 1.91 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 1.91 x 10 µs
Output for 7.0.1
50 x A::foo 0.91 x 10 µs 50 x call_user_func_array 0.91 x 10 µs 50 x ReflectionMethod::invokeArgs 1.41 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 1.19 x 10 µs
Output for 7.0.0
50 x A::foo 1.29 x 10 µs 50 x call_user_func_array 1.19 x 10 µs 50 x ReflectionMethod::invokeArgs 1.81 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 1.60 x 10 µs
Output for 5.6.28
50 x A::foo 2.60 x 10 µs 50 x call_user_func_array 6.01 x 10 µs 50 x ReflectionMethod::invokeArgs 4.72 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 5.89 x 10 µs
Output for 5.6.21
50 x A::foo 1.48 x 10 µs 50 x call_user_func_array 3.79 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.20
50 x A::foo 2.38 x 10 µs 50 x call_user_func_array 5.70 x 10 µs 50 x ReflectionMethod::invokeArgs 4.10 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 3.91 x 10 µs
Output for 5.6.19
50 x A::foo 2.41 x 10 µs 50 x call_user_func_array 6.10 x 10 µs 50 x ReflectionMethod::invokeArgs 4.70 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 4.01 x 10 µs
Output for 5.6.18
50 x A::foo 2.50 x 10 µs 50 x call_user_func_array 4.51 x 10 µs 50 x ReflectionMethod::invokeArgs 3.41 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 3.70 x 10 µs
Output for 5.6.17
50 x A::foo 1.81 x 10 µs 50 x call_user_func_array 4.41 x 10 µs 50 x ReflectionMethod::invokeArgs 2.81 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 2.50 x 10 µs
Output for 5.6.16
50 x A::foo 2.81 x 10 µs 50 x call_user_func_array 7.01 x 10 µs 50 x ReflectionMethod::invokeArgs 4.51 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 4.91 x 10 µs
Output for 5.6.15
50 x A::foo 2.50 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.14
50 x A::foo 1.69 x 10 µs 50 x call_user_func_array 3.89 x 10 µs 50 x ReflectionMethod::invokeArgs 3.50 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 2.72 x 10 µs
Output for 5.6.13
50 x A::foo 1.60 x 10 µs 50 x call_user_func_array 4.89 x 10 µs 50 x ReflectionMethod::invokeArgs 3.00 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 3.19 x 10 µs
Output for 5.6.12
50 x A::foo 2.50 x 10 µs 50 x call_user_func_array 5.91 x 10 µs 50 x ReflectionMethod::invokeArgs 4.29 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 4.01 x 10 µs
Output for 5.6.11
50 x A::foo 2.50 x 10 µs 50 x call_user_func_array 5.91 x 10 µs 50 x ReflectionMethod::invokeArgs 4.39 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 4.20 x 10 µs
Output for 5.6.10
50 x A::foo 2.19 x 10 µs 50 x call_user_func_array 5.29 x 10 µs 50 x ReflectionMethod::invokeArgs 3.91 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 3.60 x 10 µs
Output for 5.6.9
50 x A::foo 2.22 x 10 µs 50 x call_user_func_array 4.89 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.6.8
50 x A::foo 3.00 x 10 µs 50 x call_user_func_array 5.98 x 10 µs 50 x ReflectionMethod::invokeArgs 4.51 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 4.10 x 10 µs
Output for 5.5.35
50 x A::foo 2.00 x 10 µs 50 x call_user_func_array 5.39 x 10 µs 50 x ReflectionMethod::invokeArgs 4.29 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 4.22 x 10 µs
Output for 5.5.34
50 x A::foo 2.10 x 10 µs 50 x call_user_func_array 6.60 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.33
50 x A::foo 2.10 x 10 µs 50 x call_user_func_array 4.39 x 10 µs 50 x ReflectionMethod::invokeArgs 3.29 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 3.41 x 10 µs
Output for 5.5.32
50 x A::foo 3.00 x 10 µs 50 x call_user_func_array 3.79 x 10 µs 50 x ReflectionMethod::invokeArgs 2.69 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 4.29 x 10 µs
Output for 5.5.31
50 x A::foo 4.48 x 10 µs 50 x call_user_func_array 10.20 x 10 µs 50 x ReflectionMethod::invokeArgs 7.70 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 7.39 x 10 µs
Output for 5.5.30
50 x A::foo 2.00 x 10 µs 50 x call_user_func_array 4.79 x 10 µs 50 x ReflectionMethod::invokeArgs 3.60 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 3.29 x 10 µs
Output for 5.5.29
50 x A::foo 1.62 x 10 µs 50 x call_user_func_array 3.91 x 10 µs 50 x ReflectionMethod::invokeArgs 2.79 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 2.69 x 10 µs
Output for 5.5.28
50 x A::foo 2.41 x 10 µs 50 x call_user_func_array 5.98 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.5.27
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.29 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 4.01 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 3.98 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 3.72 x 10 µs
Output for 5.5.25
50 x A::foo 3.60 x 10 µs 50 x call_user_func_array 9.61 x 10 µs 50 x ReflectionMethod::invokeArgs 6.89 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 6.51 x 10 µs
Output for 5.5.24
50 x A::foo 2.22 x 10 µs 50 x call_user_func_array 7.20 x 10 µs 50 x ReflectionMethod::invokeArgs 4.60 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 4.51 x 10 µs
Output for 5.4.45
50 x A::foo 5.82 x 10 µs 50 x call_user_func_array 5.20 x 10 µs 50 x ReflectionMethod::invokeArgs 4.20 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 4.51 x 10 µs
Output for 5.4.44
50 x A::foo 5.98 x 10 µs 50 x call_user_func_array 7.58 x 10 µs 50 x ReflectionMethod::invokeArgs 5.70 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 5.51 x 10 µs
Output for 5.4.43
50 x A::foo 4.29 x 10 µs 50 x call_user_func_array 5.70 x 10 µs 50 x ReflectionMethod::invokeArgs 4.70 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 4.98 x 10 µs
Output for 5.4.42
50 x A::foo 7.61 x 10 µs 50 x call_user_func_array 8.20 x 10 µs 50 x ReflectionMethod::invokeArgs 8.61 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 10.40 x 10 µs
Output for 5.4.41
50 x A::foo 5.70 x 10 µs 50 x call_user_func_array 13.49 x 10 µs 50 x ReflectionMethod::invokeArgs 10.51 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 13.49 x 10 µs
Output for 5.4.40
50 x A::foo 3.70 x 10 µs 50 x call_user_func_array 5.51 x 10 µs 50 x ReflectionMethod::invokeArgs 4.29 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 7.51 x 10 µs
Output for 5.4.39
50 x A::foo 4.10 x 10 µs 50 x call_user_func_array 5.41 x 10 µs 50 x ReflectionMethod::invokeArgs 4.39 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 5.60 x 10 µs 50 x ReflectionMethod::invokeArgs 4.60 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 4.89 x 10 µs
Output for 5.4.37
50 x A::foo 3.79 x 10 µs 50 x call_user_func_array 18.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.36
50 x A::foo 3.41 x 10 µs 50 x call_user_func_array 11.30 x 10 µs 50 x ReflectionMethod::invokeArgs 4.60 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 4.79 x 10 µs
Output for 5.4.35
50 x A::foo 5.20 x 10 µs 50 x call_user_func_array 16.71 x 10 µs 50 x ReflectionMethod::invokeArgs 13.59 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 14.09 x 10 µs
Output for 5.4.34
50 x A::foo 3.91 x 10 µs 50 x call_user_func_array 9.89 x 10 µs 50 x ReflectionMethod::invokeArgs 7.10 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 7.20 x 10 µs
Output for 5.4.32
50 x A::foo 2.60 x 10 µs 50 x call_user_func_array 3.79 x 10 µs 50 x ReflectionMethod::invokeArgs 3.00 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 5.29 x 10 µs
Output for 5.4.31
50 x A::foo 2.79 x 10 µs 50 x call_user_func_array 3.89 x 10 µs 50 x ReflectionMethod::invokeArgs 4.91 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 4.48 x 10 µs
Output for 5.4.30
50 x A::foo 2.60 x 10 µs 50 x call_user_func_array 4.39 x 10 µs 50 x ReflectionMethod::invokeArgs 4.98 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 5.89 x 10 µs
Output for 5.4.29
50 x A::foo 3.50 x 10 µs 50 x call_user_func_array 8.89 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.28
50 x A::foo 3.39 x 10 µs 50 x call_user_func_array 3.89 x 10 µs 50 x ReflectionMethod::invokeArgs 4.60 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 7.80 x 10 µs
Output for 5.4.27
50 x A::foo 2.79 x 10 µs 50 x call_user_func_array 3.89 x 10 µs 50 x ReflectionMethod::invokeArgs 6.10 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 6.41 x 10 µs
Output for 5.4.26
50 x A::foo 3.39 x 10 µs 50 x call_user_func_array 9.89 x 10 µs 50 x ReflectionMethod::invokeArgs 7.89 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 7.61 x 10 µs
Output for 5.4.25
50 x A::foo 4.29 x 10 µs 50 x call_user_func_array 10.30 x 10 µs 50 x ReflectionMethod::invokeArgs 7.20 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 9.42 x 10 µs
Output for 5.4.24
50 x A::foo 2.60 x 10 µs 50 x call_user_func_array 3.10 x 10 µs 50 x ReflectionMethod::invokeArgs 2.69 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 3.91 x 10 µs
Output for 5.4.23
50 x A::foo 3.60 x 10 µs 50 x call_user_func_array 4.41 x 10 µs 50 x ReflectionMethod::invokeArgs 4.39 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 6.29 x 10 µs
Output for 5.4.22
50 x A::foo 2.60 x 10 µs 50 x call_user_func_array 11.18 x 10 µs 50 x ReflectionMethod::invokeArgs 5.01 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 4.91 x 10 µs
Output for 5.4.21
50 x A::foo 2.50 x 10 µs 50 x call_user_func_array 8.39 x 10 µs 50 x ReflectionMethod::invokeArgs 4.70 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 4.79 x 10 µs
Output for 5.4.20
50 x A::foo 2.50 x 10 µs 50 x call_user_func_array 3.91 x 10 µs 50 x ReflectionMethod::invokeArgs 4.48 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 5.10 x 10 µs
Output for 5.4.19
50 x A::foo 3.60 x 10 µs 50 x call_user_func_array 8.11 x 10 µs 50 x ReflectionMethod::invokeArgs 4.89 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 3.48 x 10 µs
Output for 5.4.18
50 x A::foo 3.50 x 10 µs 50 x call_user_func_array 3.91 x 10 µs 50 x ReflectionMethod::invokeArgs 4.60 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 4.70 x 10 µs
Output for 5.4.17
50 x A::foo 2.60 x 10 µs 50 x call_user_func_array 14.78 x 10 µs 50 x ReflectionMethod::invokeArgs 6.79 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 7.01 x 10 µs
Output for 5.4.16
50 x A::foo 3.50 x 10 µs 50 x call_user_func_array 9.30 x 10 µs 50 x ReflectionMethod::invokeArgs 10.99 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 10.40 x 10 µs
Output for 5.4.15
50 x A::foo 2.50 x 10 µs 50 x call_user_func_array 3.91 x 10 µs 50 x ReflectionMethod::invokeArgs 3.10 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 3.29 x 10 µs
Output for 5.4.14
50 x A::foo 2.50 x 10 µs 50 x call_user_func_array 4.22 x 10 µs 50 x ReflectionMethod::invokeArgs 4.51 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 3.29 x 10 µs
Output for 5.4.13
50 x A::foo 2.48 x 10 µs 50 x call_user_func_array 4.10 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.12
50 x A::foo 2.60 x 10 µs 50 x call_user_func_array 5.10 x 10 µs 50 x ReflectionMethod::invokeArgs 3.19 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 4.70 x 10 µs
Output for 5.4.11
50 x A::foo 3.29 x 10 µs 50 x call_user_func_array 3.91 x 10 µs 50 x ReflectionMethod::invokeArgs 4.41 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 3.70 x 10 µs
Output for 5.4.10
50 x A::foo 2.50 x 10 µs 50 x call_user_func_array 3.39 x 10 µs 50 x ReflectionMethod::invokeArgs 3.00 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 3.19 x 10 µs
Output for 5.4.9
50 x A::foo 37.48 x 10 µs 50 x call_user_func_array 7.30 x 10 µs 50 x ReflectionMethod::invokeArgs 5.51 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 4.70 x 10 µs
Output for 5.4.8
50 x A::foo 2.72 x 10 µs 50 x call_user_func_array 4.48 x 10 µs 50 x ReflectionMethod::invokeArgs 4.20 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 3.41 x 10 µs
Output for 5.4.7
50 x A::foo 2.69 x 10 µs 50 x call_user_func_array 2.31 x 10 µs 50 x ReflectionMethod::invokeArgs 5.91 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 15.31 x 10 µs
Output for 5.4.6
50 x A::foo 2.60 x 10 µs 50 x call_user_func_array 4.01 x 10 µs 50 x ReflectionMethod::invokeArgs 4.70 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 4.89 x 10 µs
Output for 5.4.5
50 x A::foo 4.41 x 10 µs 50 x call_user_func_array 3.98 x 10 µs 50 x ReflectionMethod::invokeArgs 4.79 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 4.89 x 10 µs
Output for 5.4.4
50 x A::foo 4.20 x 10 µs 50 x call_user_func_array 3.98 x 10 µs 50 x ReflectionMethod::invokeArgs 4.70 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 3.41 x 10 µs
Output for 5.4.3
50 x A::foo 3.19 x 10 µs 50 x call_user_func_array 19.50 x 10 µs 50 x ReflectionMethod::invokeArgs 3.29 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 4.82 x 10 µs
Output for 5.4.2
50 x A::foo 2.41 x 10 µs 50 x call_user_func_array 6.41 x 10 µs 50 x ReflectionMethod::invokeArgs 7.39 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 4.89 x 10 µs
Output for 5.4.1
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.70 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 4.98 x 10 µs
Output for 5.4.0
50 x A::foo 2.50 x 10 µs 50 x call_user_func_array 4.29 x 10 µs 50 x ReflectionMethod::invokeArgs 3.19 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 7.10 x 10 µs
Output for 5.3.29
50 x A::foo 3.22 x 10 µs 50 x call_user_func_array 4.20 x 10 µs 50 x ReflectionMethod::invokeArgs 3.60 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 3.60 x 10 µs
Output for 5.3.28
50 x A::foo 2.79 x 10 µs 50 x call_user_func_array 4.98 x 10 µs 50 x ReflectionMethod::invokeArgs 5.01 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 4.41 x 10 µs
Output for 5.3.27
50 x A::foo 2.60 x 10 µs 50 x call_user_func_array 4.79 x 10 µs 50 x ReflectionMethod::invokeArgs 3.50 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 5.91 x 10 µs
Output for 5.3.26
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.70 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 6.08 x 10 µs
Output for 5.3.25
50 x A::foo 4.32 x 10 µs 50 x call_user_func_array 4.91 x 10 µs 50 x ReflectionMethod::invokeArgs 3.60 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 6.10 x 10 µs
Output for 5.3.24
50 x A::foo 2.72 x 10 µs 50 x call_user_func_array 4.89 x 10 µs 50 x ReflectionMethod::invokeArgs 0.81 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 6.60 x 10 µs
Output for 5.3.23
50 x A::foo 1.60 x 10 µs 50 x call_user_func_array 5.60 x 10 µs 50 x ReflectionMethod::invokeArgs 4.39 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 7.20 x 10 µs
Output for 5.3.22
50 x A::foo 4.60 x 10 µs 50 x call_user_func_array 7.92 x 10 µs 50 x ReflectionMethod::invokeArgs 4.82 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 9.58 x 10 µs
Output for 5.3.21
50 x A::foo 2.81 x 10 µs 50 x call_user_func_array 4.10 x 10 µs 50 x ReflectionMethod::invokeArgs 5.20 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 5.41 x 10 µs
Output for 5.3.20
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.48 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 5.60 x 10 µs
Output for 5.3.19
50 x A::foo 2.81 x 10 µs 50 x call_user_func_array 4.98 x 10 µs 50 x ReflectionMethod::invokeArgs 4.70 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 5.70 x 10 µs
Output for 5.3.18
50 x A::foo 4.01 x 10 µs 50 x call_user_func_array 8.51 x 10 µs 50 x ReflectionMethod::invokeArgs 7.51 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 5.29 x 10 µs
Output for 5.3.17
50 x A::foo 2.69 x 10 µs 50 x call_user_func_array 4.29 x 10 µs 50 x ReflectionMethod::invokeArgs 5.29 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 5.32 x 10 µs
Output for 5.3.16
50 x A::foo 3.00 x 10 µs 50 x call_user_func_array 4.89 x 10 µs 50 x ReflectionMethod::invokeArgs 4.39 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 8.39 x 10 µs
Output for 5.3.15
50 x A::foo 2.60 x 10 µs 50 x call_user_func_array 4.29 x 10 µs 50 x ReflectionMethod::invokeArgs 3.50 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 3.48 x 10 µs
Output for 5.3.14
50 x A::foo 1.72 x 10 µs 50 x call_user_func_array 4.70 x 10 µs 50 x ReflectionMethod::invokeArgs 3.70 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 5.60 x 10 µs
Output for 5.3.13
50 x A::foo 2.60 x 10 µs 50 x call_user_func_array 4.51 x 10 µs 50 x ReflectionMethod::invokeArgs 3.81 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 5.20 x 10 µs
Output for 5.3.12
50 x A::foo 2.60 x 10 µs 50 x call_user_func_array 10.30 x 10 µs 50 x ReflectionMethod::invokeArgs 8.70 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 5.10 x 10 µs
Output for 5.3.11
50 x A::foo 3.22 x 10 µs 50 x call_user_func_array 4.79 x 10 µs 50 x ReflectionMethod::invokeArgs 6.01 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 3.91 x 10 µs
Output for 5.3.10
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.01 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 6.41 x 10 µs
Output for 5.3.9
50 x A::foo 2.91 x 10 µs 50 x call_user_func_array 4.20 x 10 µs 50 x ReflectionMethod::invokeArgs 4.98 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 5.20 x 10 µs
Output for 5.3.8
50 x A::foo 2.69 x 10 µs 50 x call_user_func_array 8.89 x 10 µs 50 x ReflectionMethod::invokeArgs 8.89 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 5.60 x 10 µs
Output for 5.3.7
50 x A::foo 2.98 x 10 µs 50 x call_user_func_array 3.60 x 10 µs 50 x ReflectionMethod::invokeArgs 4.70 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 4.10 x 10 µs
Output for 5.3.6
50 x A::foo 2.79 x 10 µs 50 x call_user_func_array 4.01 x 10 µs 50 x ReflectionMethod::invokeArgs 4.60 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 3.70 x 10 µs
Output for 5.3.5
50 x A::foo 2.79 x 10 µs 50 x call_user_func_array 3.60 x 10 µs 50 x ReflectionMethod::invokeArgs 3.50 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 4.39 x 10 µs
Output for 5.3.4
50 x A::foo 3.91 x 10 µs 50 x call_user_func_array 3.81 x 10 µs 50 x ReflectionMethod::invokeArgs 3.41 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 3.70 x 10 µs
Output for 5.3.3
50 x A::foo 2.69 x 10 µs 50 x call_user_func_array 3.70 x 10 µs 50 x ReflectionMethod::invokeArgs 3.39 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 3.60 x 10 µs
Output for 5.3.2
50 x A::foo 3.98 x 10 µs 50 x call_user_func_array 3.50 x 10 µs 50 x ReflectionMethod::invokeArgs 4.70 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 4.01 x 10 µs
Output for 5.3.1
50 x A::foo 2.41 x 10 µs 50 x call_user_func_array 3.60 x 10 µs 50 x ReflectionMethod::invokeArgs 4.29 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 4.29 x 10 µs
Output for 5.3.0
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.10 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 7.10 x 10 µs
Output for 5.2.17
50 x A::foo 3.10 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.60 x 10 µs
Output for 5.2.16
50 x A::foo 3.19 x 10 µs 50 x call_user_func_array 10.42 x 10 µs 50 x ReflectionMethod::invokeArgs 6.39 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 5.29 x 10 µs
Output for 5.2.15
50 x A::foo 3.41 x 10 µs 50 x call_user_func_array 4.98 x 10 µs 50 x ReflectionMethod::invokeArgs 5.70 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 4.60 x 10 µs
Output for 5.2.14
50 x A::foo 3.19 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) 4.51 x 10 µs
Output for 5.2.13
50 x A::foo 4.48 x 10 µs 50 x call_user_func_array 5.10 x 10 µs 50 x ReflectionMethod::invokeArgs 3.50 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 4.29 x 10 µs
Output for 5.2.12
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.72 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 4.22 x 10 µs
Output for 5.2.11
50 x A::foo 3.19 x 10 µs 50 x call_user_func_array 4.91 x 10 µs 50 x ReflectionMethod::invokeArgs 4.01 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 4.20 x 10 µs
Output for 5.2.10
50 x A::foo 3.10 x 10 µs 50 x call_user_func_array 6.79 x 10 µs 50 x ReflectionMethod::invokeArgs 3.81 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 6.29 x 10 µs
Output for 5.2.9
50 x A::foo 3.10 x 10 µs 50 x call_user_func_array 5.32 x 10 µs 50 x ReflectionMethod::invokeArgs 5.60 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 4.20 x 10 µs
Output for 5.2.8
50 x A::foo 3.10 x 10 µs 50 x call_user_func_array 5.39 x 10 µs 50 x ReflectionMethod::invokeArgs 3.91 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 5.48 x 10 µs
Output for 5.2.7
50 x A::foo 3.10 x 10 µs 50 x call_user_func_array 11.40 x 10 µs 50 x ReflectionMethod::invokeArgs 5.10 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 5.29 x 10 µs
Output for 5.2.6
50 x A::foo 3.10 x 10 µs 50 x call_user_func_array 5.29 x 10 µs 50 x ReflectionMethod::invokeArgs 3.60 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 5.29 x 10 µs
Output for 5.2.5
50 x A::foo 4.10 x 10 µs 50 x call_user_func_array 13.40 x 10 µs 50 x ReflectionMethod::invokeArgs 8.51 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 4.32 x 10 µs
Output for 5.2.4
50 x A::foo 3.39 x 10 µs 50 x call_user_func_array 14.00 x 10 µs 50 x ReflectionMethod::invokeArgs 4.10 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 9.30 x 10 µs
Output for 5.2.3
50 x A::foo 4.41 x 10 µs 50 x call_user_func_array 5.79 x 10 µs 50 x ReflectionMethod::invokeArgs 4.10 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 5.70 x 10 µs
Output for 5.2.2
50 x A::foo 5.29 x 10 µs 50 x call_user_func_array 5.32 x 10 µs 50 x ReflectionMethod::invokeArgs 3.70 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 5.51 x 10 µs
Output for 5.2.1
50 x A::foo 3.19 x 10 µs 50 x call_user_func_array 5.39 x 10 µs 50 x ReflectionMethod::invokeArgs 3.70 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 5.51 x 10 µs
Output for 5.2.0
50 x A::foo 3.19 x 10 µs 50 x call_user_func_array 5.41 x 10 µs 50 x ReflectionMethod::invokeArgs 3.89 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 5.39 x 10 µs
Output for 5.1.6
50 x A::foo 3.19 x 10 µs 50 x call_user_func_array 14.40 x 10 µs 50 x ReflectionMethod::invokeArgs 9.99 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 5.70 x 10 µs
Output for 5.1.5
50 x A::foo 3.89 x 10 µs 50 x call_user_func_array 10.09 x 10 µs 50 x ReflectionMethod::invokeArgs 8.42 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 11.80 x 10 µs
Output for 5.1.4
50 x A::foo 5.20 x 10 µs 50 x call_user_func_array 14.31 x 10 µs 50 x ReflectionMethod::invokeArgs 9.32 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 7.92 x 10 µs
Output for 5.1.3
50 x A::foo 3.19 x 10 µs 50 x call_user_func_array 5.01 x 10 µs 50 x ReflectionMethod::invokeArgs 3.60 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 6.20 x 10 µs
Output for 5.1.2
50 x A::foo 3.19 x 10 µs 50 x call_user_func_array 5.29 x 10 µs 50 x ReflectionMethod::invokeArgs 3.79 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 5.39 x 10 µs
Output for 5.1.1
50 x A::foo 3.39 x 10 µs 50 x call_user_func_array 4.51 x 10 µs 50 x ReflectionMethod::invokeArgs 4.89 x 10 µs 5 x (10 x ReflectionMethod::invokeArgs) 4.98 x 10 µs
Output for 5.1.0
50 x A::foo 3.41 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) 5.32 x 10 µs
Output for 5.0.5
50 x A::foo 5.20 x 10 µs 50 x call_user_func_array 8.51 x 10 µs Fatal error: Call to undefined method ReflectionMethod::invokeArgs() in /in/md9jf on line 28
Process exited with code 255.
Output for 5.0.4
50 x A::foo 5.48 x 10 µs 50 x call_user_func_array 8.39 x 10 µs Fatal error: Call to undefined method ReflectionMethod::invokeArgs() in /in/md9jf on line 28
Process exited with code 255.
Output for 5.0.3
50 x A::foo 4.48 x 10 µs 50 x call_user_func_array 8.58 x 10 µs Fatal error: Call to undefined method ReflectionMethod::invokeArgs() in /in/md9jf on line 28
Process exited with code 255.
Output for 5.0.2
50 x A::foo 4.10 x 10 µs 50 x call_user_func_array 9.80 x 10 µs Fatal error: Call to undefined method ReflectionMethod::invokeArgs() in /in/md9jf on line 28
Process exited with code 255.
Output for 5.0.1
50 x A::foo 4.39 x 10 µs 50 x call_user_func_array 8.61 x 10 µs Fatal error: Call to undefined method ReflectionMethod::invokeArgs() in /in/md9jf on line 28
Process exited with code 255.
Output for 5.0.0
50 x A::foo 4.29 x 10 µs 50 x call_user_func_array 8.61 x 10 µs Fatal error: Call to undefined method ReflectionMethod::invokeArgs() in /in/md9jf on line 28
Process exited with code 255.
Output for 4.4.9
50 x A::foo 5.30 x 10 µs 50 x call_user_func_array 8.60 x 10 µs Fatal error: Cannot instantiate non-existent class: reflectionmethod in /in/md9jf on line 26
Process exited with code 255.
Output for 4.4.8
50 x A::foo 7.10 x 10 µs 50 x call_user_func_array 13.00 x 10 µs Fatal error: Cannot instantiate non-existent class: reflectionmethod in /in/md9jf on line 26
Process exited with code 255.
Output for 4.4.7
50 x A::foo 5.10 x 10 µs 50 x call_user_func_array 9.60 x 10 µs Fatal error: Cannot instantiate non-existent class: reflectionmethod in /in/md9jf on line 26
Process exited with code 255.
Output for 4.4.6
50 x A::foo 5.20 x 10 µs 50 x call_user_func_array 7.20 x 10 µs Fatal error: Cannot instantiate non-existent class: reflectionmethod in /in/md9jf on line 26
Process exited with code 255.
Output for 4.4.5
50 x A::foo 5.20 x 10 µs 50 x call_user_func_array 6.90 x 10 µs Fatal error: Cannot instantiate non-existent class: reflectionmethod in /in/md9jf on line 26
Process exited with code 255.
Output for 4.4.4
50 x A::foo 12.10 x 10 µs 50 x call_user_func_array 8.00 x 10 µs Fatal error: Cannot instantiate non-existent class: reflectionmethod in /in/md9jf on line 26
Process exited with code 255.
Output for 4.4.3
50 x A::foo 5.10 x 10 µs 50 x call_user_func_array 6.30 x 10 µs Fatal error: Cannot instantiate non-existent class: reflectionmethod in /in/md9jf on line 26
Process exited with code 255.
Output for 4.4.2
50 x A::foo 6.30 x 10 µs 50 x call_user_func_array 6.20 x 10 µs Fatal error: Cannot instantiate non-existent class: reflectionmethod in /in/md9jf on line 26
Process exited with code 255.
Output for 4.4.1
50 x A::foo 5.30 x 10 µs 50 x call_user_func_array 8.50 x 10 µs Fatal error: Cannot instantiate non-existent class: reflectionmethod in /in/md9jf on line 26
Process exited with code 255.
Output for 4.4.0
50 x A::foo 5.40 x 10 µs 50 x call_user_func_array 8.70 x 10 µs Fatal error: Cannot instantiate non-existent class: reflectionmethod in /in/md9jf on line 26
Process exited with code 255.
Output for 4.3.11
50 x A::foo 5.30 x 10 µs 50 x call_user_func_array 17.90 x 10 µs Fatal error: Cannot instantiate non-existent class: reflectionmethod in /in/md9jf on line 26
Process exited with code 255.
Output for 4.3.10
50 x A::foo 5.60 x 10 µs 50 x call_user_func_array 11.80 x 10 µs Fatal error: Cannot instantiate non-existent class: reflectionmethod in /in/md9jf 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 8.80 x 10 µs Fatal error: Cannot instantiate non-existent class: reflectionmethod in /in/md9jf on line 26
Process exited with code 255.
Output for 4.3.8
50 x A::foo 4.70 x 10 µs 50 x call_user_func_array 9.50 x 10 µs Fatal error: Cannot instantiate non-existent class: reflectionmethod in /in/md9jf on line 26
Process exited with code 255.
Output for 4.3.7
50 x A::foo 4.70 x 10 µs 50 x call_user_func_array 9.00 x 10 µs Fatal error: Cannot instantiate non-existent class: reflectionmethod in /in/md9jf on line 26
Process exited with code 255.
Output for 4.3.6
50 x A::foo 4.60 x 10 µs 50 x call_user_func_array 8.50 x 10 µs Fatal error: Cannot instantiate non-existent class: reflectionmethod in /in/md9jf on line 26
Process exited with code 255.
Output for 4.3.5
50 x A::foo 4.40 x 10 µs 50 x call_user_func_array 9.00 x 10 µs Fatal error: Cannot instantiate non-existent class: reflectionmethod in /in/md9jf on line 26
Process exited with code 255.
Output for 4.3.4
50 x A::foo 4.30 x 10 µs 50 x call_user_func_array 10.70 x 10 µs Fatal error: Cannot instantiate non-existent class: reflectionmethod in /in/md9jf on line 26
Process exited with code 255.
Output for 4.3.3
50 x A::foo 8.40 x 10 µs 50 x call_user_func_array 9.40 x 10 µs Fatal error: Cannot instantiate non-existent class: reflectionmethod in /in/md9jf on line 26
Process exited with code 255.
Output for 4.3.2
50 x A::foo 4.30 x 10 µs 50 x call_user_func_array 10.30 x 10 µs Fatal error: Cannot instantiate non-existent class: reflectionmethod in /in/md9jf on line 26
Process exited with code 255.
Output for 4.3.1
50 x A::foo 4.30 x 10 µs 50 x call_user_func_array 8.60 x 10 µs Fatal error: Cannot instantiate non-existent class: reflectionmethod in /in/md9jf on line 26
Output for 4.3.0
50 x A::foo 5.20 x 10 µs 50 x call_user_func_array 8.20 x 10 µs Fatal error: Cannot instantiate non-existent class: reflectionmethod in /in/md9jf on line 26